使用DDEV时Laravel Livewire临时图片加载出现404错误
解决DDEV环境下Livewire图片临时预览404问题
以下是针对该问题的排查和解决步骤:
清除路由缓存
Livewire的动态路由可能被Laravel的路由缓存拦截,执行以下命令清除缓存:ddev exec php artisan route:clear检查Nginx配置,确保Livewire路由被正确转发
DDEV默认的Nginx配置可能没有专门处理/livewire/开头的请求,需要添加规则确保请求转发到Laravel入口:- 在项目根目录创建
.ddev/nginx_full目录(如果不存在) - 创建
.ddev/nginx_full/livewire.conf文件,写入以下内容:location /livewire/ { try_files $uri $uri/ /index.php?$query_string; } - 重启DDEV服务:
ddev restart
- 在项目根目录创建
修复临时文件目录权限
Livewire默认将临时上传文件存储在storage/app/livewire-tmp,检查该目录权限是否正确:ddev exec chmod -R 775 storage/app/livewire-tmp ddev exec chown -R www-data:www-data storage/app/livewire-tmp清理旧的Livewire临时文件
残留的损坏临时文件可能导致预览异常,执行命令清理:ddev exec rm -rf storage/app/livewire-tmp/*确认Livewire与Laravel版本兼容性
确保使用的Livewire版本和Laravel版本匹配:- Laravel 10/11 → Livewire 3.x
- Laravel 8/9 → Livewire 2.x
版本不兼容会导致路由、临时文件处理等一系列异常。
内容的提问来源于stack exchange,提问作者Saul
相关产品推荐
相关产品推荐

