【发布时间】:2018-08-09 14:22:21
【问题描述】:
我正在开发一个应用程序,并希望将图像上传到我的应用程序。现在,当我想为我的文件创建符号链接时,我收到以下错误:
ErrorException : symlink(): No such file or directory
Exception trace:
symlink("/home/user/private/application/storage/app/public", "/home/user/private/application/public/storage")
我知道这是什么原因,但我不知道如何解决和/或有解决方法。
我的公用文件夹位于我的 html_root 目录中,而应用程序的其余部分位于我的 html_root 之外的目录中。在这种情况下/home/user/private/application。
当我使用php artisan storage:link 时,它会尝试在我的“私人”目录中查找公用文件夹,但由于我的公用文件夹位于 html_root 中而无法找到。
【问题讨论】:
-
如果你改变了 Laravel 的文件夹结构,你不能指望依赖该结构的函数能正常工作。在这种情况下,我会查看
storage:link命令 (Illuminate\Foundation\Console\StorageLinkCommand) 的代码,复制到自定义命令并根据需要进行修改。 -
由于只有公共内容应该在 html_root 中,我认为将其余内容放在另一个目录中也很好(出于结构目的)。
标签: laravel laravel-5 laravel-storage