Nginx设置HTTPS监听

Nginx设置https监听

在 Nginx 上设置 HTTPS 证书,并将所有 HTTP 请求重定向到 HTTPS,需要执行以下几个步骤:

1. 获取 SSL 证书

首先,你需要获取一个 SSL 证书,可以从以下渠道获得:

  • 自签名证书(测试用)
  • 付费证书(如购买的证书)

这里,博主使用这个网站生成 https://ssl.host.mw/certificate/apply

2. 安装证书

安装证书文件和私钥到服务器,通常是 .crt.key 文件。自己确定存放的目录。

3. 配置 Nginx

编辑 Nginx 配置文件,按照自己实际情况来,通常在 /etc/nginx/nginx.conf 中。

(1)配置 HTTP 重定向到 HTTPS

将所有 HTTP 请求重定向到 HTTPS,你可以在 Nginx 配置文件中添加以下代码:

server {
    listen 80;
    server_name www.liuzijian.com;

    # 重定向所有请求到 HTTPS
    return 301 https://$host$request_uri;
}

(2)配置 HTTPS 服务器

在同一个配置文件中,添加 HTTPS 服务器的配置:

server {
    listen 443 ssl;
    server_name www.liuzijian.com;

    # SSL 证书路径,按照实际情况填写
    ssl_certificate /xxx/your_domain.crt;
    ssl_certificate_key /xxx/your_domain.key;

    # 推荐的 SSL 配置
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    
    location / {
        # 配置你的网站根目录
        root /var/www/your_domain;
        index index.html index.htm;
    }

    # 代理到其他端口
    #location / {

    #    proxy_pass http://127.0.0.1:8360;
    #}
}

4. 检查并重启 Nginx

确保配置文件没有语法错误:

sudo nginx -t

如果没有错误,重启 Nginx:

sudo systemctl restart nginx

5. 测试

通过访问 http://www.liuzijian.comhttps://www.liuzijian.com 测试是否实现了 HTTP 到 HTTPS 的重定向。

这样,你就成功地配置了 Nginx 使用 HTTPS,并将所有 HTTP 请求重定向到 HTTPS。


Nginx设置HTTPS监听
https://blog.liuzijian.com/post/03708e47-03bd-4efe-a569-16f0eedc6158.html
作者
Liu Zijian
发布于
2024年10月13日