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

Nginx反向代理调用Notion API遭Cloudflare返回403/421错误求助

解决Notion API反向代理403/421错误的方案

核心问题分析

Cloudflare对Notion API的请求有严格的验证机制,生产环境Nginx代理时容易因为请求头缺失、SNI配置不全、协议标识错误触发403或421错误,以下是针对性的修复步骤:

1. 强制传递正确的Host头

Cloudflare会校验请求的Host字段是否匹配Notion API域名,必须显式设置:

proxy_set_header Host api.notion.com;

2. 完善SSL代理配置(即使Nginx用HTTP)

虽然Nginx和外部负载均衡用HTTP通信,但代理到Notion的HTTPS接口时,必须指定SNI参数:

proxy_ssl_name api.notion.com;
proxy_ssl_server_name on;
# 同时指定安全的SSL版本和加密套件
proxy_ssl_protocols TLSv1.2 TLSv1.3;
proxy_ssl_ciphers HIGH:!aNULL:!MD5;

3. 传递原始请求的协议/来源信息

外部负载均衡处理了SSL,需要让Notion API知晓请求的真实协议,避免被判定为异常:

proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Host $host;

4. 临时禁用代理缓存(排查用)

缓存的旧请求头可能导致验证失败,可临时关闭缓存:

proxy_cache_bypass $http_pragma;
proxy_no_cache $http_pragma;
proxy_no_cache $http_cache_control;

完整可用的Nginx配置示例

将以上配置整合到你的代理location块中:

server {
    listen 80;
    server_name your-app-domain.com;

    location /notion-proxy/ {
        # 如果你的应用通过前缀转发请求,重写路径去除前缀
        rewrite ^/notion-proxy/(.*)$ /$1 break;

        proxy_pass https://api.notion.com;
        # 核心请求头配置
        proxy_set_header Host api.notion.com;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $remote_addr;
        proxy_set_header X-Forwarded-Host $host;
        # 关键SSL代理参数
        proxy_ssl_name api.notion.com;
        proxy_ssl_server_name on;
        proxy_ssl_protocols TLSv1.2 TLSv1.3;
        proxy_ssl_ciphers HIGH:!aNULL:!MD5;
        # 禁用缓存(排查阶段可加,稳定后可移除)
        proxy_cache_bypass $http_pragma;
        proxy_no_cache $http_pragma;
        proxy_no_cache $http_cache_control;
    }
}

额外排查方向

  • 检查外部负载均衡是否过滤了某些请求头,比如是否保留了Authorization头(Notion API需要这个鉴权)
  • 确认生产环境的Notion API密钥和开发环境一致,403也可能是密钥无效或权限不足
  • 查看服务器的请求日志,确认所有头信息是否正确传递到Notion API

内容的提问来源于stack exchange,提问作者S. Yong

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 17:55:23