在 DigitalOcean 服务器上找不到图像
Images not being found on DigitalOcean server
要事第一!
我在我的 Laravel 应用程序中创建了一个路由来保护图像,然后我使用 intervention/image 获取它们并将它们展示给用户。
// 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。会不会是问题所在?
我认为 Image::make 期望路径如下:
$img = Image::make('public/foo.jpg');
问题是 php 内置服务器无法理解图像干预路径。
使用虚拟 host/server 块,它工作得很好!!
要事第一!
我在我的 Laravel 应用程序中创建了一个路由来保护图像,然后我使用 intervention/image 获取它们并将它们展示给用户。
// 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。会不会是问题所在?
我认为 Image::make 期望路径如下:
$img = Image::make('public/foo.jpg');
问题是 php 内置服务器无法理解图像干预路径。 使用虚拟 host/server 块,它工作得很好!!