Re: Не корректно работает root в nginx

MihaKot mihakot на gmail.com
Пт Июл 31 12:36:30 UTC 2020


> 1. Запретить проверять регулярные выражения после "location /html",
добавив модификатор "^~"

 Спасибо! помогло

пт, 31 июл. 2020 г. в 15:10, Maxim Dounin <mdounin на mdounin.ru>:

> Hello!
>
> On Fri, Jul 31, 2020 at 02:14:17PM +0300, MihaKot wrote:
>
> > есть конфигурация nginx
> >
> > server {
>
> [...]
>
> >     root /var/www/_test.domain/client/;
>
> [...]
>
> >     location /html {
>
> [...]
>
> >     location ~* \.(js|css|png|jpg|jpeg|gif|swf|xml|txt)$ {
> >         expires 14d;
> >     }
>
> [...]
>
> > При такой конфигурации скрипты работают, при запросе
> > client.test.domain/html/css/style.css выдает 404 Not found
> >
> > в логе nginx видно что файл ищет
> > "/var/www/_test.domain/client/html/css/style.css"
>
> Всё правильно, какой root указан - такой и используется.
>
> Важно для понимания: для обработки запроса используется строго
> один location, и если вы себе сделали location "для статики", в
> который попадает запрос, то действует тот root, который задан в
> этом location'е.
>
> Если хочется, чтобы работала конфигурация из "location /html", то
> есть два пути:
>
> 1. Запретить проверять регулярные выражения после "location
> /html", добавив модификатор "^~".
>
> 2. Изолировать имеющиеся регулярные выражения там, где они должны
> применяться, например - внутри "location /".
>
> [...]
>
> --
> Maxim Dounin
> http://mdounin.ru/
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru



-- 
P.S. Сохраняйте переписку в теле письма.
___________________________________
Best regards, Konstantin @MihaKot@ Aksarin.
Phone: +7 921 74 66 818
Skype: mihakot
E-mail: mihakot на gmail.com
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20200731/a3d1f93e/attachment.htm>


Подробная информация о списке рассылки nginx-ru