Я пытаюсь воспользоваться преимуществами нового подписанного промежуточного программного обеспечения в Laravel 5.7, но по какой-то причине сгенерированный подписанный URL-адрес возвращает 403. Invalid Signature.
Я использую последнюю версию Laravel с PHP7.2
Это мой маршрут web.php:
Route::get('/report/{user}/{client}', function ($user, $client) {
return ("El usuario es: $user y el cliente es: $client");
})->name('report.client')->middleware('signed');
, и это в моем контроллере:
$objDemo->tempURL = Url::temporarySignedRoute('report.client', now('America/Panama')->addDays(5), [
'user' => 1,
'client' => 1
]);
URL генерируется и показывает что-то вроде этого:
https://example.com/report/1/1?expires=1545440368&signature=55ad67fa049a74fe8e123c664e50f53564b76154e2dd805c5927125f63c390a1
Но когда я нажимаю на ссылку, получается 403 с сообщением: «Неверная подпись»
Есть идеи?заранее спасибо
----------- ОБНОВЛЕНИЕ ------------
То, что я уже сделал:
- Попробуйте маршрут без подписи, и отлично работает
- Попробуйте маршрут без параметров и только подпись
- Попробуйте маршрут без временной настройки и только подпись
- УстановитьIP-адрес cloudflare для доверенных прокси
- Отключить HTTPS, Включить HTTPS
Кажется, что ничего не работает, всегда получая страницу недействительной подписи 403
----------- ОБНОВЛЕНИЕ 2 ------------
Хорошо, поэтому после некоторого копания и тестирования я обнаружил, что подписанные laravel маршруты не будут работать, если пользовательвошел в систему, это странно, если я выхожу из системы, то маршрут работает отлично, но если я захожу в систему, то это показывает ошибку 403, может ли это быть потому, что Laravel добавляет заголовок cookie сеанса после всего остального?и поэтому подписанный маршрут не получается из-за этого?это так и должно быть?
Странно, потому что, скажем, я хочу создать временную ссылку для моих пользователей, чтобы что-то скачать, если они войдут в мое приложение Laravel, они будутполучить это сообщение об ошибке 403 ...: (*
------------ ОБНОВЛЕНИЕ 3 ------------------
Я попробовал новую установку laravel и работал отлично, так что это что-то из моего основного приложения Laravel, также пытался установить каждую зависимость компоновщика в установку Fresh Laravel, и все равно работал отлично, независимо от пользователястатус входа в систему, поэтому это не противоречит моим зависимостям.