因为我刚开始编译nginx的时候没有启用http_ssl_module。
所以需要重新编译nginx二进制文件。

编译参数

./configure --conf-path=/etc/nginx/conf/nginx.conf --user=nginx --group=nginx --with-openssl=/root/openssl-1.0.1g/ --pid-path=/var/run/nginx.pid --lock-path=/var/lock/nginx.lock --with-http_stub_status_module --with-http_ssl_module

请参考如何为运行中的nginx重新添加模块文章。

下面配置nginx。

shell > openssl genrsa -out key.pem 2048
shell > openssl req -new -key key.pem -out cert.csr
//会提示输入省份、城市、域名信息等,重要的是,email 一定要是你的域名后缀的你可以拿着这个文件去数字证书颁发机构(即CA)申请一个数字证书。CA会给你一个新的文件cacert.pem,那才是你的数字证书。
如果是自己做测试,就可以用下面这个命令来生成证书:
shell > openssl req -new -x509 -nodes -out server.crt -keyout server.key

配置好后,重启nginx,采用 https打开网站,浏览器会提示证书错误,点击继续浏览即可。
https

ssl证书错误