下面给你一份**在 Debian + Nginx 上配置 SSL(HTTPS)**的常用做法,从「申请证书」到「Nginx 配置」一步步来,适合新手也能直接用。
sudo apt update
sudo apt install nginx
example.com)sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
按提示:
certbot 会:
✅ 自动申请证书
✅ 自动修改 Nginx 配置
✅ 设置自动续期
如果你已有:
example.com.crtexample.com.keysudo mkdir -p /etc/nginx/ssl
sudo cp example.com.crt /etc/nginx/ssl/
sudo cp example.com.key /etc/nginx/ssl/
sudo nano /etc/nginx/sites-available/example.com
示例配置:
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
root /var/www/example.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
浏览器访问:
https://example.com
或命令行:
curl -I https://example.com
sudo certbot renew --dry-run
certbot 默认已加入 systemd 定时任务。
❌ 证书不受信任
❌ Nginx 启动失败
sudo nginx -t
看具体错误
❌ 443 端口不通
sudo ufw allow 443/tcp
如果你愿意,可以告诉我:
我可以给你更精确的一对一配置方案。