Так нужно, чтобы merge_slashes был выключен только на http://127.0.0.1, а на всех остальных, где будет выбор хоста по SNI - включен. Грубо - устроит на всех http выключен, а на всех https включен. Добрый день,
И как быть, если мне в одном из серверов необходимо иметь два подряд идущих слэша? Это purge для кэша, который зависит от cookies пользователя, которые, естественным образом могут быть пустыми.
Самый простой способ - использовать TLS с SNI. В таком случае выбор сервера будет происходить на этапе хендшейка TLS.
Теоретически можно изменить поведение nginx таким образом, чтобы при указании полного uri в строке запроса выбор сервера происходил до обработки uri, и это вам поможет. Но это требует осторожности и анализа возможных последствий. И в этом случае marge_slashes будет работать по-разному в строке запроса и в заголовке Host, что тоже не очень хорошо.
Добрый день,
Здравствуйте!
Есть примерно такой упрощённый конфиг и при обращении к some.local////////some.html merge_slashes не работает. Если в первом сервере убрать merge_slashes off, то всё работает нормально и во втором сервере. Почему так? nginx version: nginx/1.25.3
На момент парсинга строки запроса, nginx еще не знает о том, какой виртуальный сервер будет выбран и использует настройки дефолтного.
Если вы включите ssl, то ситуация будет другой. http { merge_slashes on; } server { listen 127.0.0.1:80 default_server; server_name 127.0.0.1 _ ""; merge_slashes off; allow 127.0.0.1; deny all; location /nginx_status { stub_status on; } …. много location } server { listen *:80; server_name some.local; …. много location } Best, VS _______________________________________________ nginx-ru mailing list [email protected]https://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________nginx-ru mailing list[email protected]https://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________ nginx-ru mailing list [email protected]https://mailman.nginx.org/mailman/listinfo/nginx-ru
_______________________________________________nginx-ru mailing list[email protected]https://mailman.nginx.org/mailman/listinfo/nginx-ru
|