-
首先确保机器上安装了openssl和openssl-devel
- npm install openssl
- npm install openssl-devel (安装报错 导致我没安装成功,但是也还是配置成功了 我感觉这个没啥用)
-
然后自己给自己颁发证书
- cd /usr/local/etc/nginx/ (这个是证书的安装目录,建议放置在 nginx 根目录 )
- openssl genrsa -des3 -out server.key 1024 (建立服务器私钥,在这个过程中需要输入密码短语,需要记住这个密码,后面会用到。 另:下面所有涉及到密码的都设置成了 123456, 也可以设置成自己的密码)
- openssl req -new -key server.key -out server.csr
-
上面一步执行完毕后,需要输入如下 内容 (填写超过三项即可)
- Country Name(国家:中国填写CN)
- State or Province Name(区域或是省份:Beijing)
- Locality Name(地区局部名字:Beijing)
- Organization Name(机构名称:填写公司名)
- Organizational Unit Name(组织单位名称:部门名称)
- Common Name(网站域名)
- Email Address(邮箱地址)
- A challenge password(输入一个密码 反正我写的是 123456 )
- An optional company name(一个可选的公司名称)
-
输入完这些内容,就会在当前目录生成server.csr文件, 顺序执行如下命令
- cp server.key server.key.org
- openssl rsa -in server.key.org -out server.key
- openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
-
配置Nginx配置 (记住:是在你需要进行https认证的域名的Nginx配置文件中 新增 一个server配置文件 )
- listen 443 ssl; (端口号并开启ssl)
- server_name xxx.xxx.com; (域名)
- ssl_certificate /usr/local/etc/nginx/server.crt; (证书在本机的路径)
- ssl_certificate_key /usr/local/etc/nginx/server.key; (key在本机的路径)
- root /Users/xxx/xxx/; (虚拟主机的目录)
-
重启 Nginx
- sodu nginx -s reload
-
找到证书(/usr/local/etc/nginx/server.crt),导入系统证书目录
-
访问(访问的时候,如果提示不是私密链接,选择继续访问就好了)
作者:狼_来_了
链接:https://www.jianshu.com/p/529cfb1ef84a
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。