Собственно, возникла необходимость перенаправлять пользователей одного ресурса принудительно на https в силу некоторой деликатности информации, которая на ресурсе имеется.
Есть в конфиге виртхоста такая шляпа:
location /somewhere {
rewrite ^/(.*)
https://$server_name$request_uri? permanent;
}
Учитывая, что для доступа по https уже давно был сконфигурирован отдельный виртхост (отдельным файлом), эти две с половиной строки я просто закинул в виртхост, работающий по 80-му порту, и все отлично получилось, казалось бы.
Косяк заключается в том, что пользователи любят закладки. Если сказать браузеру
resource.ru/somewhere, то редирект на защищённое соединение сработает. Если же сказать
resource.ru/somewhere/index.php, или показать руками на нужный скрипт, редирект не работает.
Каким бы образом можно было реализовать искомое?
Среда — Squeeze, nginx 1.0.10 и php5-fpm 5.3.8-1 из дотдеба. Остальное, думаю, несущественно.