Я использовал пакет thephpleague / glide в своем приложении laravel для изменения размера изображений.
Я написал маршрут, подобный приведенному ниже, чтобы получить width
, height
и path
изображения на сервере, а затем с помощью этого пакета изменить это изображение и вернуть его.
Route::get('/showImage/{w}/{h}/{src}', [
'as' => 'showImage',
'uses' => function (League\Glide\Server $server, $w, $h, $src) {
$server->outputImage($src, ['w' => $w, 'h' => $h, 'fit' => 'crop']);
}
])->where('src', '.+');
Предположим, я запросил http://www.example.com/showImage/300/168/galleries/mypic.jpg
URL. но в то время как galleries/mypic.jpg
является правильным и существует на сервере, я получил 404 not found error.
Я использовал именно этот маршрут в других проектах, но на новом хосте я столкнулся с этой проблемой.
Я думаю, что проблема в параметре src
, который может содержать знаки /
и .
. Потому что, когда я использую строку без каких-либо /
и .
, это работает и может получить доступ к параметру src
.