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

Laravel Filament(Sail/Docker)环境下HTTPS请求JS引发CORS错误

解决Laravel Sail + Filament下HTTPS环境静态资源HTTP请求导致的CORS错误

问题场景

基于Docker(Laravel Sail)的Laravel + Filament框架,使用https://test.docker.localhost访问时,table.js和select.js等Filament静态资源被以http://协议请求,触发CORS错误:

Access to script at 'http://test.docker.localhost/js/filament/forms/components/select.js?v=3.2.50.0' from origin 'https://test.docker.localhost' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
async-alpine.js?v=3.2.50.0:1 

GET http://test.docker.localhost/js/filament/forms/components/select.js?v=3.2.50.0 net::ERR_FAILED

解决方案

1. 修正环境配置

打开项目根目录的.env文件,确保以下配置正确:

APP_URL=https://test.docker.localhost
SAIL_SSL=true

2. 配置Laravel信任代理

Laravel Sail依赖反向代理运行,应用需要信任代理才能正确识别当前请求的HTTPS协议。修改config/app.php中的trusted_proxies项:

'trusted_proxies' => ['*'], // 开发环境可直接设为*,生产环境建议指定具体IP段

3. 清除配置与视图缓存

执行Sail命令清除缓存,确保新配置生效:

sail artisan config:clear
sail artisan view:clear

4. 强制HTTPS路由(可选)

如果上述步骤仍未解决问题,可在app/Providers/AppServiceProvider.php的boot方法中添加代码,强制所有路由使用HTTPS:

use Illuminate\Support\Facades\URL;

public function boot()
{
    URL::forceScheme('https');
}

完成以上操作后重新访问页面,Filament的静态资源将以https://协议加载,CORS错误即可解决。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 19:52:07