【发布时间】:2019-07-11 18:21:08
【问题描述】:
我的 Laravel 应用程序遇到了一个关键问题。当验证失败时,Laravel 会将请求重定向到根 URL,而不是之前的。我尝试使用 FormRequest 但仍然给出相同的结果。
然后我用不同的路由检查了以前的 URL(使用 url()->previous() 方法),每次它返回根 URL...
这是会话配置文件。 (据我所知 Laravel 从会话中获取之前的 URL)
'driver' => env('SESSION_DRIVER', 'file'),
'lifetime' => env('SESSION_LIFETIME', 300),
'expire_on_close' => false,
'encrypt' => false,
'files' => storage_path('framework/sessions'),
'connection' => null,
'table' => 'sessions',
'store' => null,
'lottery' => [2, 100],
'cookie' => env(
'SESSION_COOKIE',
str_slug(env('APP_NAME', 'laravel'), '_').'_session'
),
'path' => '/',
'domain' => env('SESSION_DOMAIN', null),
'http_only' => true,
'same_site' => null,
我正在使用 redis 作为会话驱动程序,我已经使用 redis 作为缓存驱动程序并且它工作正常。
我正在挖掘我所做的更改,但仍然无法弄清楚导致错误的原因..
!!!
我解决了我的问题,并且元引荐来源标签导致了该问题。
<meta name="referrer" content="origin">我删除了那行,它恢复了正常。但我不认为使用origin-when-cross-origin 选项是个好方法
【问题讨论】:
-
你说的是哪个验证?
-
嗯,首先,这不是一个错误,其次,也许你在中间的某个地方有一个重定向,它会从会话中刷新之前的 URL。
-
如果您使用的是表单,那么它会自动重新直接转到您的表单。
-
@BILALMALIK 表单验证