去年写过一篇“VPS上安装Lnmp和配置SSL”,刚开始时使用LNMP,后来觉得Nginx配置不兼容Apache就又换成了LAMP,主要还是VPS的内存比较足。这会换成Xen后内存只有256M,只能重回LNMP了。
首先是用vhost.sh来给SSL的子域添加一个目录和对应的权限,然后编辑vhost目录下新建的conf文件。
1. 在第一个location之前加上下面一段,xxx是StartSSL的证书文件名:
ssl on; ssl_certificate /usr/local/nginx/conf/xxx.crt; ssl_certificate_key /usr/local/nginx/conf/xxx.key; ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; ssl_prefer_server_ciphers on;
2. 在各php相关的location下增加“fastcgi_param HTTPS on;”一行。(PS. 实测时不加这一行也没问题)
3. 从StartSSL下载根证书,并追加到xxx.crt文件中:
wget http://www.startssl.com/certs/sub.class1.server.ca.pem cp xxx.crt xxx.crt.old cat sub.class1.server.ca.pem >> xxx.crt
这里需要注意的一点是,xxx.crt证书保存时必须以Linux换行格式保存,并且最后保留一空行,这样通过cat追加ca.pem文件时根证书才会另起一行,否则会出错。
相关日志
Tags: VPS