ssl_prefer_server_ciphers on;
server_name example.com;
root /var/www;
index index.html;
location /admin/ {
if ($server_port = 80) {
rewrite ^\/(.*)$ https://$server_name/$1 permanent;
}
}
location / {
if ($server_port = 443) {
rewrite ^\/(.*)$ http://$server_name/$1 permanent;
}
}
}
таким образом я админку защищал самоподписаным сертификатом от разных
любопытных товарищей. и все работало. а 0.5.7 на любые http запросы
отвечает исключительно "400 Bad Request The plain HTTP request was
sent to HTTPS port"
80 порт он похоже тоже как ssl открыл :( как побеждать? 2 раза server?
ломает дублировать - очепяток наделаю даже с копипасте, ибо в отличие
от этого учебного конфига в реальном еще много всего про fastcgi. или
может можно выделить как то общую часть?
Уже не в первый раз у меня возникает ощущение, что пришло поколение админов,
которые не настраивали SSL в mod_ssl, не говоря уже об Apache-SSL,
а занялись этим сразу в nginx'е. Иначе бы таких вопросов не возникало.
Может быть, действительно сделать
server {
listen 80;
listen 443 default ssl;
...
location /some/ {
if ($ssl = "") {
...
}
}
?
Правда, я пока не вижу, есть ли здесь какие-нибудь подводные камни.
Игорь Сысоев
http://sysoev.ru