1. 安装 Nginx
首先,确保你已经安装了 Nginx。你可以使用以下命令在基于 Ubuntu/Debian 的系统上安装:
1 2 | sudo apt update sudo apt install nginx |
2. 配置 Nginx 网站创建一个新的配置文件:
创建一个新的配置文件:
1 | sudo vi /etc/nginx/sites-available/your_domain.conf |
添加以下配置内容:
1 2 3 4 5 6 7 8 9 10 11 12 | server { listen 80; server_name your_domain.com www.your_domain.com; root /var/www/your_domain; #确保将 your_domain.com 替换为你的实际域名,并将 root 设置为你网站文件所在的路径。 index index.html index.htm index.nginx-debian.html; location / { try_files $uri $uri/ =404; } } |
启用配置并重启 Nginx:
1 2 3 | sudo ln -s /etc/nginx/sites-available/your_domain.conf /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx |
3. 安装 SSL 证书
使用 Let’s Encrypt 提供的免费 SSL 证书可以通过 Certbot 实现。首先安装 Certbot 和 Nginx 插件:
1 | sudo apt install certbot python3-certbot-nginx |
4. 申请 SSL 证书
运行以下命令,Certbot 会自动修改你的 Nginx 配置文件以添加 SSL 支持。安装过程中会提示你选择是否将 HTTP 重定向到 HTTPS,建议选择重定向以确保流量的安全:
1 | sudo certbot --nginx -d your_domain.com -d www.your_domain.com |
5. 自动续期
Let’s Encrypt 的证书有效期为 90 天。为了自动续期,可以通过添加定时任务,执行证书自动续签。使用以下命令测试续期是否正常工作:
1 | sudo certbot renew --dry-run |
通过执行 crontab -e 命令,添加一条新的定时任务命令:
1 | 0 2 * * * certbot renew --quiet |