在 Nginx 中配置 SSL(即 HTTPS)通常包括以下几个步骤:
1. 获取 SSL 证书
你需要一个有效的 SSL 证书,可以通过 Let’s Encrypt、商用证书颁发机构等方式获得。
2. 安装 Nginx
确保你的服务器上已经安装了 Nginx。可以使用以下命令进行安装(以 Ubuntu 为例):
sudo apt update
sudo apt install nginx
3. 配置 SSL
打开你的 Nginx 配置文件。常见路径是 /etc/nginx/sites-available/default
或者 /etc/nginx/nginx.conf
。
sudo nano /etc/nginx/sites-available/default
4. 编辑配置文件
在 server
块中添加或修改如下内容:
server {
listen 80;
server_name your_domain.com www.your_domain.com;
# 将 HTTP 请求重定向到 HTTPS
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name your_domain.com www.your_domain.com;
ssl_certificate /path/to/your/fullchain.pem; # 替换为你的证书路径
ssl_certificate_key /path/to/your/privkey.pem; # 替换为你的私钥路径
# 可选:增加一些安全性设置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'HIGH:!aNULL:!MD5';
location / {
proxy_pass http://localhost:your_backend_port; # 替换为后端服务地址和端口,或直接提供静态文件等
# 如果是静态网站,可以用 root 指令指向文档根目录,例如:
# root /var/www/html;
index index.html index.htm;
}
}
5. 检查配置文件是否有误
在终端运行以下命令检查 Nginx 配置的正确性:
sudo nginx -t
6. 重启 Nginx
如果没有错误,重启 Nginx 来应用更改:
sudo systemctl restart nginx
注意事项
- 确保防火墙允许 HTTPS 流量。如果使用
ufw
,可以运行以下命令:
sudo ufw allow 'Nginx Full'
- 确保域名 DNS 设置正确,指向你的服务器 IP 地址。
完成以上步骤后,你的 Nginx 应该就成功配置了 SSL,能够通过 HTTPS 提供服务。
内容由零声教学AI助手提供,问题来源于学员提问