Symlink(): 没有这样的文件或目录,因为 public 文件夹在不同的目录中

Symlink(): no such file or directory because public folder is in a different directory

我正在开发一个应用程序,想将图片上传到我的应用程序。现在,当我想为我的文件创建符号 link 时,出现以下错误:

ErrorException : symlink(): No such file or directory

Exception trace:
symlink("/home/user/private/application/storage/app/public", "/home/user/private/application/public/storage")

我知道这是什么原因,但我不知道如何解决and/or有解决方法。

我的 public 文件夹在我的 html_root 目录中,应用程序的其余部分在我的 html_root 之外的目录中。在这种情况下 /home/user/private/application.

当我使用 php artisan storage:link 时,它试图在我的 'private' 目录中找到 public 文件夹,但找不到它,因为我的 public 文件夹位于 html_root.

通过将我的 html_root 内容放回我在 /home/user/private/application 中的私人文件夹并创建我的 public 文件夹的符号链接到我的 /home/user 并重命名来解决问题/home/user/public 文件夹到 /home/user/html_root(并保持符号链接不变)。

所以我仍然使用官方 Laravel 目录结构,并制作了 public 文件夹的虚假(符号链接)。

有了这个我可以正常使用 php artisan storage:link 而无需创建自定义命令。