Nginx 配置 ssl 证书
在部署线下测试环境时浏览器会自动将http替换成https,又因为测试环境没有证书经常会导致跳转错误,所以自己配置一个ssl证书就可以避免这个问题。
下面记录我在MacOS下自己配置ssl证书的过程
制作证书
先进入到
nginx.conf
所在目录,我这里是cd /usr/local/etc/nginx/
创建服务器私钥(key)
openssl genrsa -out server.key 1024
然后设置一个token,这里会问一大堆问题,第一填’CN’然后后面不用填路回车就行
openssl req -new -key server.key -out server.csr
去除密码保护,就不用每次都输密码了
$ cp server.key server.key.org
$ openssl rsa -in server.key.org -out server.key
最后生成
openssl x509 -req -in server.csr -out server.crt -signkey server.key -days 3650
将
server.key
和server.crt
文件移动到nginx.conf
文件所在目录可以用别的位置,但有可能出现权限和绝对路径访问等各种问题,笔主就是因为这个踩了好多坑,所以推荐放在这个位置
配置Nginx
打开
nginx.conf
修改如下配置如果单独配置了server(在
nginx.conf
使用了include
引用其他的配置文件)则需要在对应的server写配置。server {
listen 80 ;
listen 443 ssl;
server_name localhost;
ssl_certificate server.crt;
ssl_certificate_key server.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
```
重启ngixn应用修改
sudo nginx -s reload
还没有评论,来说两句吧...