前端Nginx服务器Https SSL证书的部署与更换

本文介绍了如何在Nginx服务器上更换即将过期的SSL证书,包括申请证书、配置Nginx.conf文件、处理静态文件和API请求的代理,以及重启Nginx服务的过程。

前言

我的个人服务器域名的证书三月底就要过期了,于是我这两天打算把他换一下,但是过了一年了具体我也有点忘了,于是自己又清理了一下思路,顺便记录一下,明年的今天的不会忘了。

Nginx的简单介绍

Nginx是一个开源的高性能的HTTP服务器和反向代理服务器。它能够处理成千上万的并发连接,以及高达数百万的并发请求,并具有出色的负载均衡和反向代理功能。Nginx还可以作为一个通用的TCP/UDP代理服务器,支持多种协议,例如HTTP、HTTPS、SMTP、POP3和IMAP等。Nginx已经成为一个非常流行的Web服务器和反向代理服务器,被广泛应用于许多大型的互联网企业、高流量网站、移动应用程序等。

步入正题

  1. 申请SSL证书,且下载证书(购买域名的平台基本是可以的,具体请查看对应平台规则。)

  2. 服务器中的443端口的对外权限保证是开着的(去购买服务器的运营商里看防火墙配置)

  3. 复制证书到nginx的conf目录下

image.png
4. 配置nginx.conf

# HTTPS server
#
server {
    listen       443 ssl;
    server_name  example.com www.example.com;

    ssl_certificate      example.com_bundle.crt;
    ssl_certificate_key  example.com.key;

    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;

    # 配置加密套件
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;

    location / {
        root   html/dist;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html;
        error_page 405 =200 http://$host$request_uri;
    }

    # 处理 API 请求的代理
    location /api/ {
        proxy_pass <http://localhost:9090>;
        proxy_set_header Host $HOST;
        rewrite "^/api/(.*)" /$1 break;
    }
}

这段代码是一个 Nginx 配置文件中的一部分,它定义了一个 HTTPS 服务器的配置。下面是各部分的含义:

  • listen 443 ssl; :监听 HTTPS 请求的端口 443,并启用 SSL。

  • server_name example.com www.example.com; :配置服务器的域名,即处理该域名的请求。

  • ssl_certificate example.com_bundle.crt;ssl_certificate_key example.com.key; :配置 SSL 证书和私钥的路径。

  • ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m; :配置 SSL 会话缓存和超时时间。

  • ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;ssl_prefer_server_ciphers on; :配置加密套件,使用的是 ECDHE-RSA-AES128-GCM-SHA256,而不使用弱密码套件。同时,优先使用服务器支持的加密套件。

  • location / :处理根路径请求,即网站的静态文件请求。

    • root html/dist; :指定静态文件的根目录。
    • index index.html index.htm; :指定默认的索引文件。
    • try_files $uri $uri/ /index.html; :按照顺序尝试查找请求的文件或文件夹,如果都找不到,则返回默认的索引文件。
    • error_page 405 =200 http://$host$request_uri; :当请求方式不被允许时,返回状态码 200 并显示请求的页面。
  • location /api/ :处理 API 请求的代理。

    • proxy_pass <http://localhost:9090>; :将请求转发到本地的 9090 端口。
    • proxy_set_header Host $HOST; :将请求头中的 Host 字段设置为代理服务器的主机名。
    • rewrite "^/api/(.*)" /$1 break; :重写 URL,将 /api/ 后面的部连接上
  1. 重启Nginx服务器
`nginx -s reload` #重新加载Nginx配置文件,然后以优雅的方式重启Nginx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值