如何将子域重新路由到本地主机 + 端口号?

uri*_*rig 6 http routing proxy

我的开发人员机器上运行着几个 Web 应用程序。它们模仿我们托管在子域上的生产 Web 应用程序。例如,考虑:

api.myserver.com - is mimicked by 127.0.0.1:8000     
www.myserver.com - is mimicked by 127.0.0.1:8008    
and so on...
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到,在我的 Windows 7 机器上,对“api.myserver.com”的 HTTP 调用(注意缺少端口号)被重定向到 127.0.0.1:8000 等?请注意,这需要同时应用于客户端调用(在浏览器中)和服务器端调用(从 IIS 到 Python 开发服务器,反之亦然)。

我是否需要在本地运行代理才能实现此目的?你能推荐一个这样的工具吗?

小智 10

实际上,您的问题的解决方案比端口转换简单得多。

由于整个 127.xxx IP 块都路由到本地主机,因此您可以在该块中使用您想要的任何 IP 并将其绑定到每个网站。

例如,编辑您的主机文件以进行绑定:

127.0.0.1    www.site.com
127.0.0.2    api.site.com
127.0.0.3    dev.site.com
Run Code Online (Sandbox Code Playgroud)

配置每个站点以绑定到其 IP 地址。

请注意,由于您想使用 IIS 之外的其他服务器,而 IIS 往往会囤积端口 80 的所有可用 IP,因此您需要禁用套接字池以使其完美运行:

http://www.iislogs.com/steveschofield/iis7-post-44-iis7-and-apache-on-the-same-machine