Только что установил сертификат StartSSL на свой сервер debian wheezy, nginx 1.6.
Кажется, все работает нормально, я могу без проблем просматривать веб-сайт по https, пока не попытаюсь войти ...
IE работает нормально, и я могу войти в систему в OK.
Chrome выдает такую ошибку: Код ошибки: ERR_SPDY_PROTOCOL_ERROR
Firefox просто зависает и ничего не делает.
Когда я отказываюсь от сертификата StartSSL и использую самоподписанный сертификат, все снова работает нормально, я могу без проблем войти в систему.
Моя конфигурация nginx:
server {
listen 443 ssl spdy;
server_name test.com;
root /home/www/test.com/;
ssl on;
ssl_certificate /etc/nginx/certs/test.com.crt;
ssl_certificate_key /etc/nginx/certs/test.com.key;
access_log /logs/access.log;
error_log /logs/error.log;
error_page 404 /404.html;
location / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$args;
}
..........
.........
}
Есть предложения, что может быть не так?
Я столкнулся с этой проблемой, потому что я сменил пользователя nginx, и он не имел доступа к / var / lib / nginx. Я решил проблему, указав / var / lib / nginx для нового пользователя.
На случай, если это поможет кому-то в будущем, так как это один из лучших результатов поиска, у меня была эта ошибка, но по причине, о которой я еще не упоминал.
Хотя это выглядело так, как будто виноват Nginx, у меня были другие сайты, нормально работавшие с аналогичными конфигурациями на том же сервере. Оказалось, что на самом деле это была ошибка перенаправления заголовка PHP, один из наших программистов забыл поставить «Location:» перед адресом, который, похоже, сломал заголовок и вызвал эту ошибку в Chrome. Все остальные браузеры просто проигнорировали его.
Поскольку это была первая строка в index.php, она сломалась еще до того, как увидела какой-либо сайт, из-за чего казалось, что это влияет на весь сайт, но это была только эта страница.
Добавление соответствующего заголовка Content-Type исправляет это.
["Content-Type"] = "text/html; charset=utf-8"