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

Laravel 8 CORS配置错误:限制仅指定域名访问API GET请求未生效

配置错误点及修复方案

  • 路径规则存在多余空格
    你配置的paths项中api / *、sanctum / csrf-cookie存在多余空格,会导致路径匹配失效,CORS规则不会应用到对应接口上,需要删除空格调整为正确的路径匹配规则。
  • 允许的来源缺少协议前缀
    CORS校验时Origin头会携带完整的协议信息,你只填写www.exampledomain.com无法匹配到http://www.exampledomain.com的请求,需要补全协议前缀。
  • 请求方法未做限制
    你配置的allowed_methods为*代表允许所有请求方法,若只需要允许GET请求需要调整为对应值。

修正后的完整配置

'paths' => ['api/*', 'sanctum/csrf-cookie'],
'allowed_methods' => ['GET'],
'allowed_origins' => ['http://www.exampledomain.com'],
'allowed_origins_patterns' => [],
'allowed_headers' => ['*'],
'exposed_headers' => [],
'max_age' => 0,
'supports_credentials' => false,

额外注意事项

  1. 修改配置后需要执行php artisan config:clear清除配置缓存,新配置才会生效。
  2. CORS是浏览器端的安全限制,仅会拦截浏览器环境下的跨域请求,如果你用Postman、curl等工具直接发起请求,不管域名是什么都能正常拿到响应,属于正常现象。
  3. 确认你的API路由都添加了api前缀,否则api/*的路径规则无法匹配到对应路由。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 16:15:04