php - Laravel 应用程序共享托管,存储文件夹符号链接(symbolic link)问题

标签 php laravel-5.4 shared-hosting

我已经在本地 PC 上创建了符号链接(symbolic link),它工作正常,但我已经将它上传到共享主机,它在那里不起作用。 基本上我在存储文件夹 root/storage/public/images/

中有图像

我想通过获取来显示它们

$path=asset('storage/images/'.$item->image);

所以问题出在这种方式的共享主机上

$path=asset('storage/images/'.$item->image);

从域目录而不是父目录获取,因此无法在共享主机上创建符号链接(symbolic link),所以我应该怎么做才能从父目录获取图像。 我是 laravel 的初学者,可以帮助我解决这个问题。 谢谢

最佳答案

首先从文件夹 public 中删除文件夹存储,并在 web.php 中使用此代码

Route::get('foo', function(){
    $targetFolder = $_SERVER['DOCUMENT_ROOT'].'/project_foder/laravel/storage/app/public';
    $linkFolder = $_SERVER['DOCUMENT_ROOT'].'/project_foder/public/storage';
    symlink($targetFolder, $linkFolder);
    return 'success';
});

Route::get('foo', function(){
    Artisan::call('storage:link', []);
    return 'success';
})

关于php - Laravel 应用程序共享托管,存储文件夹符号链接(symbolic link)问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44536329/

相关文章:

shared-hosting - Laravel 5.8,工匠命令错误 : Failed to parse dotenv file due to an invalid name

c# - 共享 Windows 主机上的 Windows 服务

php - SQL查询空字段,选择ALL选项如*

php - 保存一行时缺少字符?

javascript - Vue.js 2.0 在一个项目上渲染相同的组件,但不在另一个项目上渲染

laravel - 如何使用队列设置高,低和中优先级的电子邮件?

python - 在 1and1 共​​享主机 python 上安装 numpy 和 pandas

javascript - 使倒数计时器抵抗页面刷新

PHP 表单输入过滤

php - 尝试在 Laravel 中通过通知返回存储值时出错