Nginx添加ssl之添加本地证书
说明:
只是为了本地测试nginx添加ssl功能,因此就本地生成了密钥,证书,但这样证书是不被信任的。
具体效果见下图:
实现:
1.使用如下命令并根据提示输入信息,生成证书
openssl genrsa -des3 -out localhost.key 1024//创建自身密钥 openssl req -new-key localhost.key -out localhost.csr //通过密钥生成相应CSR申请文件 openssl rsa -in localhost.key -out localhost_nopass.key //生成浏览器浏览网页时不需要输入密码的密钥 openssl x509 -req -days 365-in localhost.csr -signkey localhost.key -out localhost.crt //生成证书
2.在nginx的server配置中添加如下配置:
server { listen 443; server_name www.nobody.com nobody.com; ssl on; ssl_certificate /usr/local/nginx/conf/localhost.crt; ssl_certificate_key /usr/local/nginx/conf/localhost_nopass.key;}注:如果HTTP和HTTPS虚拟主机的功能是一致的,可以配置一个虚拟主机,既处理HTTP请求,又处理HTTPS请求。 配置的方法是删除ssl on的指令,并在*:443端口添加参数ssl:...}