在 Debian 上使用 Nginx 配置 SSL 并绑定域名,一般步骤如下(以 Let’s Encrypt 免费证书 为例,也可用自己的证书):
sudo apt update
sudo apt install nginx
sudo ufw allow 80
sudo ufw allow 443
sudo apt install certbot python3-certbot-nginx
Certbot 可自动修改 Nginx 配置:
sudo certbot --nginx -d example.com -d www.example.com
将
example.com替换为你的域名
按提示输入邮箱、同意条款,证书会自动签发并配置好 HTTPS。
如果你已有证书(如 example.com.crt 和 example.com.key):
sudo 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;
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
sudo certbot renew --dry-run
系统通常会自动添加定时任务。
浏览器访问:
https://example.com
应显示安全锁标志。
如果你愿意,可以告诉我:
我可以给你更精确的配置。