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

Google API设置域名访问限制后调用返回403错误如何解决

问题产生原因

你当前使用PHP file_get_contents 发起的是服务端请求,而你在Google Cloud控制台给API密钥设置的「HTTP引荐来源网址(域名)」限制,仅适用于浏览器端发起的客户端请求:

  • 浏览器端请求会自动携带对应域名的Referer请求头,Google API会校验这个头和你设置的允许域名是否匹配
  • 服务端发起的请求默认不会携带Referer头,即便手动添加也无法通过Google的域名限制校验,因此会直接返回403禁止访问错误。
修复方案
  • 方案1:修改API密钥限制类型为IP地址限制
    如果你要继续使用服务端PHP调用逻辑,到Google Cloud API控制台把当前密钥的限制类型从「HTTP 引荐来源网址」切换为「IP 地址」,然后填入你的Repl.it项目的出站IP即可。如果是免费版Repl.it项目,出站IP为动态地址,你可以定期更新允许的IP列表,或者升级到付费版获取固定出站IP。
  • 方案2:将API调用逻辑改为客户端侧实现
    把Custom Search API的调用逻辑从PHP服务端迁移到前端JS代码中,浏览器发起请求时会自动携带对应域名的Referer头,你之前配置的search.myreplitusername.repl.co、*.myreplitusername.repl.co域名限制即可正常生效。
  • 临时验证方案
    你可以先临时关闭API密钥的所有限制,确认API调用本身参数正确、可以正常返回结果,排除其他配置错误后再调整限制规则。

注意:不要尝试在服务端请求中手动伪造Referer头,Google的校验逻辑会识别出非浏览器端的请求,无法通过域名限制校验。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 18:15:02