【发布时间】:2020-04-05 03:02:30
【问题描述】:
我注意到在我的 Laravel 应用程序开发过程中,当我尝试注册或登录我的应用程序时,return redirect() 有时不起作用。我点击了提交按钮,页面一直在加载,我可以看到 chrome 显示“正在处理”并一直在旋转,所以我必须手动单击浏览器刷新按钮才能重定向到帐户页面,这意味着用户成功登录在或注册。
但有时它工作得很好,这很奇怪。
所以今天我尝试清除 Laravel 缓存和浏览器缓存
php artisan cache:clear
php artisan route:clear
php artisan config:clear
php artisan view:clear
并在 chrome 上执行“空缓存和硬重新加载”
之后我尝试注册用户,但这次重定向没有再次起作用。
所以我检查了望远镜查看标题并注意到这一点:
我可以看到时间重定向不起作用:
referer: "https://www.mysite.test/login",
origin: "https://www.mysite.test",
host: "www.mysite.test"
重定向工作时标头的时间如下所示:
referer: "https://mysite.test/login",
origin: "https://mysite.test",
host: "mysite.test"
那么为什么在我清除缓存时会在 url 中添加“www”,为什么添加“www”会使redirect() 无法正常工作?
如果这很重要,我会通过 Valet 运行我的应用程序
编辑 我还注意到,如果我登录“https://example.com”然后访问“https://www.example.com”我没有在该域下登录,因为 cookie 似乎没有设置为“www”和没有“www”
【问题讨论】:
标签: laravel redirect caching config