Skip to content

Nginx 与 HTTPS

你现在这个站的核心结构是:

  • 80 端口负责跳转
  • 443 端口负责加密访问
  • root 指向静态文件目录

你现在这段配置在做什么

nginx
server {
    listen 80;
    server_name aizhidaohub.asia www.aizhidaohub.asia;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name aizhidaohub.asia www.aizhidaohub.asia;

    ssl_certificate     /etc/nginx/ssl/aizhidaohub.asia_bundle.pem;
    ssl_certificate_key /etc/nginx/ssl/aizhidaohub.asia.key;

    root /var/www/aizhidaohub;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

解释

  • listen 80:接收普通 HTTP
  • return 301:把访问永久跳转到 HTTPS
  • ssl_certificate:证书文件
  • ssl_certificate_key:私钥文件
  • root:网站文件目录

最小检查清单

  • 证书路径是否存在
  • server_name 是否包含根域名和 www
  • root /var/www/aizhidaohub; 是否指向构建结果
  • nginx -t 是否通过
  • systemctl reload nginx 是否成功

一个小建议

可以把 443 块加上 http2,对静态站通常更友好:

nginx
listen 443 ssl http2;

小工具站和部署速查