nginx配置HTTPS协议教程

作者:技术拾光时间:2026-07-27 08:03:18浏览:650

首先获取SSL证书(如Let'sEncrypt)并安装至服务器,然后修改Nginx配置文件,设置监听443端口并启用SSL,配置证书路径、TLS1.2/1.3协议版本及安全加密套件,同时将HTTP请求通过301永久重定向至HTTPS,最后重启Nginx服务并使用浏览器或curl命令测试HTTPS连接是否正常。

让 Nginx 支持 HTTPS 的完整步骤

要让 Nginx 支持 HTTPS,其实并不复杂,但有几个关键步骤需要走对。下面咱们一步步拆解,确保你的站点能安全接入。

nginx配置HTTPS协议教程

1. 获取 SSL 证书

这是基础。你需要为域名申请一个 SSL 证书,可以找证书颁发机构(CA)购买,也可以用免费的 Let's Encrypt。选择哪种取决于你的预算和需求,但无论如何,证书是必须的。

2. 安装证书

拿到证书文件和私钥后,把它们上传到服务器。通常我们会把证书放在 /etc/nginx/ssl 目录下,私钥也放在同一目录,方便管理。当然,路径可以自定义,但建议保持一致,避免后续配置出错。

3. 修改 Nginx 配置文件

这是核心环节。打开 Nginx 配置文件(通常位于 /etc/nginx/nginx.conf 或 /etc/nginx/sites-a vailable/your_domain.conf),在 server 块中写入以下配置:

server {
    listen 80;
    server_name your_domain.com www.your_domain.com;
    return 301 https://$host$request_uri;
}

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

    ssl_certificate /etc/nginx/ssl/your_domain.com.crt;
    ssl_certificate_key /etc/nginx/ssl/your_domain.com.key;

    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers on;

    # 其他配置,如 location 块等
}

注意,your_domain.com 和 www.your_domain.com 要替换成你的实际域名,证书和私钥的路径也要对应正确。这里配置了 SSL 协议版本和加密套件,确保安全性。

4. 重定向 HTTP 到 HTTPS

第一个 server 块就干了一件事——把所有 HTTP 请求永久重定向到 HTTPS。这样用户访问你的网站时,会自动跳转到安全连接,体验无缝。

5. 重启 Nginx

配置改完后,记得重启服务让新配置生效。在 Linux 上,可以用 sudo service nginx restart 或 sudo systemctl restart nginx。如果担心语法错误,可以先用 nginx -t 测试一下。

6. 测试 HTTPS 连接

打开浏览器,输入你的域名,看看地址栏有没有出现小锁标志。更严谨的做法是,用 SSL Labs 这类工具全面检查一下配置,确保没有遗漏的安全漏洞。

完成以上步骤,你的 Nginx 服务器就能稳稳地跑在 HTTPS 上了。其实流程并不复杂,关键在于证书路径和配置项别写错,以及别忘了重启服务。