针对图片上传出现 symlink (): Input/output error 的一种解决方案?
因为利用laravel自带的storage:link 和ubuntu环境下建立软链接都无效,这样laravel本身文件配置中的 public 和local 存储方式得到的图片地址无法正常获取。 问题原因可能在于windows 的磁盘写入吧, 试过了很多方法,包括策略组和 sudo操作,基本都无效,无奈之下,只能换一种方式,绕开这个坑。图片直接存在public中,不存入storage文件夹,绕开软连接的建立。贴下修改
修改filestystem.php配置文件中public配置即可
'default' => env('FILESYSTEM_DRIVER', 'public'),
// 'public' => [
// 'driver' => 'local',
// 'root' => storage_path('app/public'),
// 'url' => env('APP_URL').'/storage',
// 'visibility' => 'public',
// ],
'public' => [
'driver' => 'local',
'root' => public_path('admin_img'),
'url' => env('APP_URL').'/admin_img',
'visibility' => 'public',
],
laravel-admin配置文件中admin.php修改存储方式为public
/*
* Laravel-admin upload setting.
*/
'upload' => [
'disk' => 'public',
'directory' => [
'image' => 'images',
'file' => 'files',
],
],
这样就暂时绕开了这个坑。。。。。。。
推荐文章: