php - 在网络服务器上创建的 laravel 符号链接(symbolic link)仍然无法在没有 app/public 的情况下访问该文件

标签 php laravel

当我使用 php artisan storage:link 创建符号链接(symbolic link)时,该项目在本地运行良好,但在 Web 服务器(在子域上运行)上运行良好甚至ln -s full_path/storage/app/public full_path/public/storage通过 ssh,创建了符号链接(symbolic link),但如果没有 "app/public",我仍然无法访问存储/应用程序/公共(public)中的图像 例如:我可以访问 http://xyz.abc.com/storage/app/public/35/conversions/retro1-thumb.jpg 但我无法访问http://xyz.abc.com/storage/35/conversions/retro1-thumb.jpg

我已经尝试过:

  1. 删除存储并运行 php artisan storage:link - 没有帮助
  2. 更新了 htaccess 以跟踪 root 和 public 中的符号链接(symbolic link) - 无帮助
  3. 运行php artisan config:clear , php artisan config:cache , php artisan cache:clear - 没有帮助
  4. 使用真实路径作为存储和 URL 更新了 config/filesystem.php - 无帮助
  5. 联系了房东支持 - 没有帮助
  6. 进行了大量的 Google 搜索 - 没有帮助

这是我的 config/filesystems.php 磁盘配置-

'disks' => [

        'local' => [
            'driver' => 'local',
            'root' => storage_path('app'),
        ],

        'public' => [
            'driver' => 'local',
            'root' => storage_path('app/public'),
            'url' => env('APP_URL').'/storage',
            'visibility' => 'public',
        ],

        's3' => [
            'driver' => 's3',
            'key' => env('AWS_ACCESS_KEY_ID'),
            'secret' => env('AWS_SECRET_ACCESS_KEY'),
            'region' => env('AWS_DEFAULT_REGION'),
            'bucket' => env('AWS_BUCKET'),
            'url' => env('AWS_URL'),
        ],

    ],

希望能够解决。

最佳答案

尝试以下操作:

1.) config/filesystems.php 更改根目录

2.) 在 public 文件夹中,删除 storege 文件夹并运行 php artisan storage:link

3.) 检查您的服务器中是否启用了符号链接(symbolic link)

关于php - 在网络服务器上创建的 laravel 符号链接(symbolic link)仍然无法在没有 app/public 的情况下访问该文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59309320/

相关文章:

php - Laravel 5.8 同步/附加/分离事件

php - 我有一个带有 "\u00a0"的字符串,我需要用 ""替换它 str_replace 失败

php - 如何将固定行添加到 Google 可视化表格的底部

php - 将括号留在 PHP if else 结构中会提高速度吗?

php - 拉维尔 5.4 : call a route function from controller with parameters

php - undefined offset : 1 in CompilesLoops. php laravel 5

laravel - 如何在新安装时指定 Lumen(或 Laravel)版本?

php - 禁用 Laravel 内置的错误处理方法

Laravel 5 迁移更改现有列的长度

php - Laravel - 对所有路由使用 ( :any? ) 通配符?