首先要做的事情!
我在Laravel应用程序中创建了一个路径以保护图像,然后我使用干预/图像来获取它们并将它们显示给用户。
// Images Route
Route::get('/images/{folder}/{image?}/{size?}', ['as' => 'images', 'uses' => function($folder, $image, $size) {
$path = storage_path() . '/app/' . $folder . '/' . $image;
$img = Image::make($path)->resize(null, $size, function ($constraint) {
$constraint->aspectRatio();
});
return $img->response();
}]);
一切都在我当地的环境中完美运行,就像我使用GD作为图像驱动程序一样,但在将我的应用程序部署到Digital Ocean后,我不断收到404错误。
我已经仔细检查了存储文件夹并授予了正确的权限,但错误不会消失。 有人知道发生了什么事吗?
编辑: 服务器正在运行Nginx,但我的计算机正在运行Apache2。这可能是问题吗?
答案 0 :(得分:0)
我认为Image :: make期望路径如下:
$img = Image::make('public/foo.jpg');
答案 1 :(得分:0)
问题是php内置服务器无法理解图像干预路径。 使用虚拟主机/服务器块,它可以完美运行!!