Nginx 配置 ssl 证书

悠悠 2022-01-25 15:57 485阅读 0赞

在部署线下测试环境时浏览器会自动将http替换成https,又因为测试环境没有证书经常会导致跳转错误,所以自己配置一个ssl证书就可以避免这个问题。
下面记录我在MacOS下自己配置ssl证书的过程


制作证书

  • 先进入到nginx.conf所在目录,我这里是

    1. cd /usr/local/etc/nginx/
  • 创建服务器私钥(key)

    1. openssl genrsa -out server.key 1024
  • 然后设置一个token,这里会问一大堆问题,第一填’CN’然后后面不用填路回车就行

    1. openssl req -new -key server.key -out server.csr
  • 去除密码保护,就不用每次都输密码了

    1. $ cp server.key server.key.org
    2. $ openssl rsa -in server.key.org -out server.key
  • 最后生成

    1. openssl x509 -req -in server.csr -out server.crt -signkey server.key -days 3650
  • server.keyserver.crt文件移动到nginx.conf文件所在目录

    可以用别的位置,但有可能出现权限和绝对路径访问等各种问题,笔主就是因为这个踩了好多坑,所以推荐放在这个位置

配置Nginx

  • 打开nginx.conf修改如下配置

    如果单独配置了server(在nginx.conf使用了include引用其他的配置文件)则需要在对应的server写配置。

    1. server {
    2. listen 80 ;
    3. listen 443 ssl;
    4. server_name localhost;
    5. ssl_certificate server.crt;
    6. ssl_certificate_key server.key;
    7. ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    8. ssl_ciphers HIGH:!aNULL:!MD5;
    9. ```
  • 重启ngixn应用修改

    1. sudo nginx -s reload

发表评论

表情:
评论列表 (有 0 条评论,485人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Nginx 配置 ssl 证书

    > 在部署线下测试环境时浏览器会自动将http替换成https,又因为测试环境没有证书经常会导致跳转错误,所以自己配置一个ssl证书就可以避免这个问题。 > 下面记录我在M