繁体   English   中英

Safari 和 Laravel - 邮件验证

[英]Safari and Laravel - Mail Verification

背景故事

我已经开发 Laravel 应用程序大约一个月了。 在开发过程中,我只使用 google chrome 来测试应用程序。 该项目使用 Laravel mustverify 来验证用户 email。 这在谷歌浏览器中完美无缺,但是,当我使用 safari 切换到我的 MacBook 时,事情变得丑陋了。

问题

当我从应用程序收到邮件到我的邮件客户端时,我通常只需单击下面显示的链接“验证 Email 地址”。 但是,这在 Safari 中不起作用。 通常,我作为经过验证的用户(在谷歌浏览器中)被发送到用户面板,但在 Safari 中,我被重定向到登录页面(未验证或“登录”),就像 session 不存在一样safari 浏览器。

验证电子邮件的图片

那么我尝试了什么?

  • 在我的 Mac 上尝试其他浏览器:下载的 google chrome,运行良好。
  • 花了几个小时阅读 Laravel 的 Auth 过程的文档。

我还阅读了这篇文章,上面说 Safari 需要“www”。 前面的url让大家明白。 但是我将如何在本地主机中实现这一点?

所以现在我正在与您联系以获取提示、想法或想法。 我将在下面列出一些可能相关的信息:

  • PHP 版本:7.3.24
  • Laravel 版本:8.20.1
  • 软件堆栈:LEMP & LAMP(在不同机器上运行以进行测试)
  • Safari 版本:14.0.2

错误是 Safari 不信任 mailtrap 提供给我的链接。 切换到普通邮件客户端时,一切正常。

编辑您的session.same_site配置以使用nonenull

不要忘记在生产中使用laxstrict

可能是 Safari 错误...但这就是我修复它的方式...

我在这里也提供了答案...

https://laracasts.com/discuss/channels/laravel/laravel-8-email-verification-not-working-with-different-browsers

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM