要在 Nginx 中配置 SSL 证书并将请求代理到 8090 端口,你需要以下步骤:
- 确保你已经有了 SSL 证书和私钥文件。
- 修改你的 Nginx 配置文件,添加 SSL 支持,并指定反向代理到后端服务。
以下是一个示例配置:
server {
listen 443 ssl; # 使用 HTTPS 协议监听
server_name example.com; # 替换为你的域名
ssl_certificate /path/to/your/fullchain.pem; # 替换为你的证书路径
ssl_certificate_key /path/to/your/privkey.pem; # 替换为你的私钥路径
location / {
proxy_pass http://localhost:8090; # 将请求代理到本地的8090端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
# 可选:可以添加 HTTP 到 HTTPS 的重定向
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri; # 强制重定向到 HTTPS
}
配置说明
- listen 443 ssl:设置服务器监听端口为
443并启用 SSL。 - ssl_certificate 和 ssl_certificate_key:指定 SSL 证书和私钥的路径。请替换为你自己的证书文件路径。
- location 块:
proxy_pass http://localhost:8090:将请求转发到本地的8090端口。proxy_set_header指令用于传递请求头,以便后端应用能够正确识别客户端信息。
- HTTP 到 HTTPS 的重定向(可选):如果希望自动将 HTTP 请求重定向到 HTTPS,可以使用第二个
server块。
完成后
- 保存配置文件并退出编辑器。
- 测试 Nginx 配置是否有效:
sudo nginx -t - 如果没有错误,重新加载 Nginx 服务以使更改生效:
sudo systemctl reload nginx
现在,当访问 https://example.com 时,请求会被安全地转发到运行在本地的 8090 端口上。
内容由零声教学AI助手提供,问题来源于学员提问




