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

Laravel 11部署在cPanel服务器上图片无法显示的问题求助

Laravel生产环境图片显示问题排查与解决

1. 验证符号链接有效性

先确认项目根目录下的public/storage符号链接是否正确指向storage/app/public:

ls -l public/storage

输出应显示-> ../storage/app/public,如果指向错误或链接不存在:

  • 删除旧链接:rm public/storage
  • 重新创建链接(生产环境需使用web服务器用户执行,避免权限问题):
sudo -u www-data php artisan storage:link

(www-data替换为你的web服务器运行用户,比如Apache可能是apache)

2. 修复目录与文件权限

确保storage/app/public及其子目录的权限允许web服务器读取:

chmod -R 755 storage/app/public
chown -R www-data:www-data storage/app/public

3. 修正图片访问路径

代码中必须使用Laravel的asset()辅助函数生成正确的图片URL,比如在Blade模板中:

<img src="{{ asset('storage/images/your-image-name.jpg') }}" alt="图片描述">

不要直接硬写物理路径,否则会因符号链接的映射关系失效导致无法访问。

4. 检查Web服务器配置

  • Nginx:确保站点配置的根目录指向项目的public文件夹,并且包含正确的try_files规则:
server {
    root /path/to/your/laravel/project/public;
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
}
  • Apache:确认项目public目录下的.htaccess文件存在且生效,同时站点配置中AllowOverride All已开启,确保重写规则能正确解析storage路径。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 15:57:05