0

我有一个本地 Vagrant VM,我在其上开发应用程序。我厌倦了使用 Vagrant Share 提供公共 url,因为它一直断开连接,所以我安装了 localtunnel.me

我遇到的问题是我的 Apache 标头显示本地配置,这是一个问题。当我通过 localtunnel.me url 访问我的应用程序时,我需要像 $_SERVER['HTTP_HOST'] 这样的东西来读取“myproject.localtunnel.me”而不是“myproject.local”。

我已将我的公共 localtunnel.me 域添加到我的 Apache 的 ServerAlias 配置并重新加载了 Apache。当我启动 lt 时:

lt -p 80 -s myproject -l myproject.localtunnel.me 

然后我在导航到 myproject.localtunnel.me 时得到504 Gateway Timeout

如果我做:

lt -p 80 -s myproject -l myproject.local 

当我去http://myproject.localtunnel.me phpinfo() 显示 $_SERVER['HTTP_HOST'] == "myproject.local"。

这破坏了我与其他 webhook 和 API 服务的许多连接,因为标头与 URL 不匹配。

关于如何克服这个问题的任何想法(除了 ngrok 似乎更耗费资源运行)。

4

1 回答 1

0

事实证明,LocalTunnel 与 Vagrant Share 的工作方式略有不同。

为了使这项工作:

lt -p 80 -s myproject -l myproject.localtunnel.me 

您需要将 myproject.localtunnel.me 添加到站点 conf 文件(我有)中的 ServerAlias 行。

但是您还需要将其添加到 Vagrant 的主机文件中:

127.0.1.1 myproject.localtunnel.me

没有 hosts 条目会导致 504 错误。

希望这对其他人有帮助。

于 2016-06-02T23:22:43.160 回答