У нас есть угловое приложение, размещенное на nginx, которое использует случайные URL-адреса. Я пытаюсь написать регулярное выражение, чтобы сопоставить их все, чтобы перенаправить их в общий файл index.html. Что означает весь трафикодно регулярное выражение для всех путей местоположения, независимо от имени в nginx?
domain.com/abc
domain.com/xyz
все должны идти в файл index.html. Вот что я пытался:
location ~* ^/[a-z](.+)$ {
rewrite^/index.html last;
try_files $uri $uri/ /index.html;
}
Это не работает. Незлая помощь.
Регулярное выражение, которое вы предоставляете, соответствует строке * whole *. Если 'nginx' дает вам' domain.com/abc', это выражение не будет совпадать. Кроме того, возможно, что '/' необходимо экранировать. Может быть, что-то вроде этого будет работать? '^ \/[A-Z] (. +) $'. – npinti
подходит ли это к таким особым символам, как «-»? Также, если URL-адрес выглядит следующим образом: domain.com/abc/abc1 – stickywicket
Символьный набор '[az]', должен означать любую строчную букву, которая находится между 'a' и' z', поэтому по существу весь английский нижний регистр алфавит. Согласно вашему выражению, первая буква после буквы '/' должна быть строчной английской буквой. Кроме этого, '(. +) $' Должен продолжать сопоставлять любой символ до конца строки. – npinti