在laravel中存储说符号链接 - 没有这样的文件

2022-08-30 09:22:26

我在public_html/应用程序文件夹中的共享主机上部署了laravel应用程序。下面是公用文件夹中的所有内容。在 /../../files 我有其余的文件。当我做php工匠存储:链接在文件文件夹中,我的控制台说

[ErrorException]                      
  symlink(): No such file or directory

在本地主机上,我将文件上传到存储/上传文件夹。现在该怎么办?我试图更改链接,但没有什么对我有用...


答案 1
  1. 转到目录并运行:/public

    rm storage

  2. 转到 Laravel 根目录并运行:

    php artisan storage:link


编辑于2018年5月1日

当laravel项目被移动/复制到其他文件夹时,就会出现此问题。

存储链接仍然存在,从而导致异常错误。公共/存储文件夹存在并指向错误的位置,需要使用命令将其删除。rm storage

之后,在终端中运行,它将创建存储链接。php artisan storage:link

每次移动/复制/部署laravel时都需要这样做!


答案 2

使用共享托管时,我遇到同样的错误,我的公共目录移动到public_html或不同的目录,如:根名称“project”中的项目目录和根名称“public_html”中的公共目录

当由 Artisan::call('storage:link') 运行 artisan 命令时;然后面对这个错误。

解决方案:第一次需要在 app/Providers/AppServiceProvider 注册方法中绑定您的公共目录

 $this->app->bind('path.public', function() {
    return base_path('../public_html');
 });

现在运行命令其工作正常


推荐