You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求NGINX配置示例:将HTTPS请求代理至PostgREST API(HTTP)

解决PostgREST的Nginx HTTPS反向代理配置问题

你当前的Nginx配置是把HTTPS请求重定向到HTTP,这和反向代理的需求不符。要实现将HTTPS请求转成HTTP转发给PostgREST,需要用Nginx的反向代理模块来处理请求,而非重定向。

以下是完整的可直接适配的配置示例,你只需根据自身环境替换对应参数:

server {
    listen 443 ssl http2;
    server_name your-domain.com; # 替换为你的实际域名

    # SSL证书相关配置,替换成你自己的证书和密钥路径
    ssl_certificate /etc/nginx/ssl/your-domain.crt;
    ssl_certificate_key /etc/nginx/ssl/your-domain.key;

    # 可选的SSL安全优化配置
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
    ssl_prefer_server_ciphers off;

    # 核心反向代理配置,处理/api路径下的所有请求
    location /api/ {
        # 转发到PostgREST的HTTP服务,替换为你的PostgREST地址和端口(默认是localhost:3000)
        proxy_pass http://localhost:3000/;
        
        # 传递必要的请求头,确保PostgREST能正确处理请求
        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; # 告诉PostgREST原始请求是HTTPS
        
        # 确保响应的JSON格式正确返回
        proxy_pass_header Content-Type;
        proxy_buffering off; # 禁用缓冲,适合实时返回JSON数据
    }
}

关键配置说明:

  • proxy_pass:反向代理的核心指令,将/api/路径下的所有请求转发到PostgREST的HTTP服务。注意末尾的斜杠,它会把/api/xxx映射为http://localhost:3000/xxx,避免路径错误。
  • 请求头设置:X-Forwarded-Proto会告知PostgREST原始请求为HTTPS,若你用PostgREST生成链接,它会生成HTTPS格式的URL;X-Real-IP和X-Forwarded-For让PostgREST能获取真实的客户端IP。
  • SSL配置:必须正确配置ssl_certificate和ssl_certificate_key,否则Nginx无法启动HTTPS服务。若无SSL证书,可通过Let's Encrypt免费生成。

测试步骤:

  1. 修改配置后,执行nginx -t检查配置语法是否正确
  2. 检查通过后,执行systemctl reload nginx(或service nginx reload)重启Nginx
  3. 用HTTPS访问https://your-domain.com/api/your-table-name,即可获取PostgREST返回的JSON数据

内容的提问来源于stack exchange,提问作者Marcio Lino

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 18:51:20