NGINX SSL连接错误

我已经将SSL证书添加到我的服务器。 (Nginx运行的乘客和Rails)。

我创build了一个CSR,上传到GoDaddy,下载了密钥。 里面/ srv / ssl我有

www.mydomain.com.crt www.mydomain.com.key 

我的nginx版本:

 nginx -V nginx version: nginx/1.2.6 built by gcc 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) TLS SNI support enabled configure arguments: --prefix=/usr/local/nginx --with-http_ssl_module --with-http_gzip_static_module --with-cc-opt=-Wno-error --with-pcre=/tmp/root-passenger-27798/pcre-8.31 --add-module=/home/deploy/.rvm/gems/ruby-1.9.3-p392/gems/passenger-3.0.19/ext/nginx 

我把这个添加到我的nginx.conf文件中:

 server { listen 443; server_name localhost; ssl_certificate /srv/ssl/www.mydomain.com.crt; ssl_certificate_key /srv/ssl/www.mydomain.com.key; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } 

除了两条ssl线路和443端口而不是80端口之外,服务器模块与上面提到的服务器模块相同。

当我使用

听443 ssl; 并取消注释:

#ssl_session_timeout 5m;

 # ssl_protocols SSLv2 SSLv3 TLSv1; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers on; 

然后我得到一个SSL过期的警告。

当我重新评论这些,只是使用

 listen 443 ssl; 

然后我得到一个错误,但是,当我访问

https://www.mydomain.com/login与www,我得到一个绿色的locking在Chrome,但是404。这是否意味着我已经为“www”configuration了SSL而不是非www?

您的server_name设置为localhost 。 您必须将您的域名(www.domain.com,如果您的证书有www前缀),以便nginx可以在SSL协商期间select适当的虚拟主机。