Мне удалось перенаправить все запросы / admin на https:
server {
listen 80;
location /admin {
rewrite ^ https://$server_name$request_uri?$args permanent;
}
}
Но не могу понять, как получить все запросы https, которые не находятся в / admin, перенаправлены на http, пока у меня есть:
server {
listen 443;
location ~ /admin {
rewrite ^ http://$server_name$request_uri?$args permanent;
}
}
РЕДАКТИРОВАТЬ:
У меня есть переадресация, работающая по мере необходимости, но я не могу остановить переход к / admin на 404. Такое ощущение, что мне нужно поместить что-то в пустой блок.
server {
listen 443;
location /admin {
}
location / {
rewrite ^ http://$server_name$request_uri?$args permanent;
}
}
Спасибо
Я думаю, что это может ответить на мой вопрос wiki.nginx.org/HttpCoreModule#location . «Нет синтаксиса для НЕ соответствия регулярному выражению. Вместо этого сопоставьте целевое регулярное выражение и назначьте пустой блок, а затем используйте расположение / для сопоставления чего-либо еще».
—
sebastyuiop,
Пожалуйста, не пересекайте сообщение - ваш вопрос будет перенесен на лучший сайт, если он не по теме.
—
Slhck