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

Laravel如何显示根目录外的图片?符号链接配置问题求助

实现步骤

1 修正配置笔误

你当前filesystems.php中的communication磁盘配置存在语法错误,driver字段前缺失单引号,先修正为:

'communication' => [
    'driver' => 'local',
    'root' => '/var/www/communication',
],

2 新增软链映射配置

在filesystems.php的links数组中新增软链规则,直接将外部目录映射到项目public目录下的可访问路径即可,不需要链接到app/public:

'links' => [
    public_path('storage') => storage_path('app/public'),
    // 新增规则:public/communication 软链指向外部目录 /var/www/communication
    public_path('communication') => '/var/www/communication',
],

3 生成软链

在项目根目录下执行Laravel自带的软链生成命令即可:
php artisan storage:link
执行完成后就可以正常访问外部目录的资源了,比如/var/www/communication/a.png的访问地址为你的站点域名/communication/a.png。

注意事项
  • 需确保Web服务器运行用户(通常为www-data)对/var/www/communication目录持有读权限,否则会返回403权限错误
  • 若使用Windows环境,需要以管理员身份运行上述artisan命令才能正常生成软链
  • 也可以手动执行命令生成软链,效果完全一致,Linux/macOS下命令为:
    ln -s /var/www/communication /你的项目根目录/public/communication

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 15:54:06