热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用带有标题重写的ngrok时无法创建cookie

如何解决《使用带有标题重写的ngrok时无法创建cookie》经验,为你挑选了1个好方法。

我使用docker作为我的本地开发环境,并使用dinghy-http-proxy添加新TLD .docker来将请求映射到nginx-proxy容器.

我的网站通常通过http://devel.domain.com.docker等URL 访问.

我想在访问远程webhook时使用ngrok进行本地开发.

我用命令成功启动了ngrok:

ngrok http -host-header=rewrite devel.domain.com.docker 80

我可以通过地址http://randomsubdomain.ngrok.io访问我的Web应用程序的登录表单.

但是,我无法登录,因为看起来无法设置COOKIE会话.

实际上,尝试为域设置COOKIE会话,devel.domain.com.docker但是由于我们randomsubdomain.ngrok.io在浏览器中使用它们,出于安全原因它们被阻止.

我该如何绕过这个问题?我在配置中遗漏了什么吗?ngrok是否是我想要实现的目标的合适工具?



1> mperrin..:

直接询问ngrok.io支持并得到这个答案:

不,你没有遗漏任何东西,这只是重写主机头的一个不幸的副作用.主机头重写仅适用于某些应用程序,因为这样的复杂性(以及其他涉及Javascript和跨源的等).如果可能,重新配置您的网站以接受ngrok.io主机标头总是好得多.

但是,我通过检查请求是否包含x-original-host域的头部来找到解决方案ngrok.io,然后我改变会话机制(在PHP中session_set_COOKIE_params)以使用x-original-host域.


更多见解:我最终遇到了更多麻烦,并且意识到它在Chrome浏览器中不起作用,但确实在Firefox中有效!我向Ngrok询问了这个问题,Alan说道:"是的,我认为这是一个镀铬安全设置吗?但是我从来没有找到合适的标志来关闭它.使它在chrome中工作的正确方法是改变:domain = .ngrok.io到domain = mydomain.ngrok.io - 我意识到我正在使用Rails并且我有一个选项域:所有在我的COOKIE设置中.我在开发环境中删除了它,它现在完美运行!
推荐阅读
author-avatar
明天会更好--好过_652
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有