5 июня 2018 г., 14:18 пользователь darksmoke <nginx-fo...@forum.nginx.org> написал:
> Добрый день > Объясните, пожалуйста на пальцах, как работает try_files? Не как не могу > разобраться. > > У мен есть > > location /test { > alias /opt/DATA/www/mp; > expires -1; > > set_from_accept_language $lang en ru ua; > # index index_$lang.html; > try_files /index_$lang.html /index_ua.html; > } > > В таком виде почему то не находит css и картинки. В логах > 10.222.222.222 443 10.44.44.44 2018-06-05T14:15:50+03:00 > forward-to - GET > /test/icons/diagram.svg > HTTP/1.1 404 - 136 0.000 - > https://domain.ru/test/ Mozilla/5.0 (X11; Ubuntu; > Linux x86_64; rv:60.0) Gecko/20100101 > Firefox/60.0 MP_UK=b_pWrf5wxKQ_KmeFYaG2J7Zk-2XzXMh976i_p5GoAs4; > _ga=GA1.2.606895225.1527855206 domain.ru > > Идея такая: > Определяем пользовательскую локаль. Загружаем соответствующий файл. Если > такого файла нет возращает дефолтный. > > Posted at Nginx Forum: https://forum.nginx.org/read. > php?21,280036,280036#msg-280036 > > _______________________________________________ > nginx-ru mailing list > nginx-ru@nginx.org > http://mailman.nginx.org/mailman/listinfo/nginx-ru > try_files Проверяет существование файлов в заданном порядке и использует для обработки запроса первый найденный файл В вашем случае все ссылки будут через идти через /index_$lang.html. Чтобы открывались ссылки с css и js должно быть, что-то вроде: try_files $uri /index_$lang.html /index._ua.html; Тогда, сначала проверится путь $uri - например css-файл, если его нет то будет проверятся слдующая директива Тут достаточно подробно расписано https://nginx.org/ru/docs/http/ngx_http_core_module.html#try_files -- С уважением, Константин! Web-разработчик Mello <http://mellodesign.ru/>. Best regards, Constantine Mello <http://mellodesign.ru/> Web developer. +7-909-385-87-17
_______________________________________________ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru