我的代码在 localhost 开发中工作<img class="img-fluid rounded-circle" src="{{ url('image?type=user&file='.Auth::user()->picture_file.'&mime='.Auth::user()->picture_mime) }}" alt="Image Description">将访问imageController与get使用这个链接方法image?type=user&file=USER000053.png&mime=image/pngclass ImageController extends BaseController{ public function get(Request $request){ $file=Storage::disk($request->type)->get($request->file); return response($file,200)->header('content-Type',$request->mime); }}在我的filesystem.php配置文件下面'user' => [ 'driver' => 'local', 'root' => storage_path('app/user'), 'url' => env('APP_URL').'/storage', 'visibility' => 'public',],上面的代码在本地主机上运行良好。但是当我们尝试推送到生产服务器(centos os)时,该代码将不起作用。它只是返回一个损坏图像。我们已经尝试过[检查] 确保存储和临时可访问。chmod 755. 即使我们尝试过 777[检查]chown到用户 apache.apache[检查] 设置 selinux 许可模式[检查] 我们确保该文件已经存在$file_exists = Storage::disk($request->type)->exists($request->file);上面的代码返回 true[检查] 在下面尝试此代码$response = Response::make($file, 200);$response->header('Content-Type', $request->mime);return $response;还是不行试图制作符号链接php artisan storage:link它在public文件夹上创建符号链接,但仍然无法正常工作尝试下载但仍然无法正常工作 return response()->download(storage_path('app/' . $request->type . "/" . $request->file));我在 GCP 的 Centos 7 环境中运行。任何想法都会帮助我。谢谢
添加回答
举报
0/150
提交
取消