使用 XAMPP 和 Laravel 时 iframe 拒绝连接
Posted
技术标签:
【中文标题】使用 XAMPP 和 Laravel 时 iframe 拒绝连接【英文标题】:iframe refused to connect while using XAMPP and Laravel 【发布时间】:2020-11-14 17:07:17 【问题描述】:我正在开发一个 Laravel 应用程序并添加了一个 iframe,如下所示:
iframe 没有连接,只是说www.google.com 拒绝连接。我做了一些研究,这似乎与设置的 X-Frame-Options 有关。在 Chrome 浏览器开发者工具中,我看到以下错误消息:
在没有SameSite
属性的情况下设置了与https://www.google.com/ 处的跨站点资源关联的cookie。未来版本的 Chrome 将仅通过设置为 SameSite=None
和 Secure
的跨站点请求传递 cookie。您可以在开发人员工具中的 Application>Storage>Cookies 下查看 cookie,并在 https://www.chromestatus.com/feature/5088147346030592 和 https://www.chromestatus.com/feature/5633521622188032 查看更多详细信息。
我猜这是一个需要在 Apache 内的 XAMPP 服务器级别更改的设置,但我不知道在哪里。有什么想法吗?
【问题讨论】:
【参考方案1】:如果您在 localhost 上进行测试并且无法控制响应标头,则可以使用 chrome 标志禁用它。
打开这个网址:
chrome://flags/#same-site-by-default-cookies
并禁用SameSite by default cookies
SameSite
阻止浏览器将 cookie 与跨站点请求一起发送。
如果您不想禁用SameSite by default cookies
,您可以在发回响应之前添加响应标头来解决此问题:
return response($content)
->header("Set-Cookie", "HttpOnly;Secure;SameSite=Strict");
【讨论】:
非常感谢。我认为这肯定会奏效,但不幸的是,两者都没有奏效。我重新启动了 XAMPP 并再次运行 php:artisan serve。真的很奇怪。 现在可以了。我犯的一个错误是使用 www.google.com 作为 iframe 中的链接。显然是被阻止了 我建议使用 laragon 而不是 xampp...有关更多信息,请参阅我的这篇文章 ***.com/a/60383405/5753091以上是关于使用 XAMPP 和 Laravel 时 iframe 拒绝连接的主要内容,如果未能解决你的问题,请参考以下文章
在 Ubuntu (laravel) 中使用 XAMPP 运行 PHP 和 MySQL
使用 laravel 框架时如何在 xampp 上创建虚拟主机