在Windows主机文件中使用端口号
在安装TeamViewer之后,我将wampserver端口更改为8080,因此地址为http://localhost:8080. 
对于位于C:\ WINDOWS \ system32 \ drivers \ etc \的主机文件,我也进行了如下更改
 之前 
 127.0.0.1 www.example.com 
 后 
 127.0.0.1:8080 www.example.com 
当我访问www.example.com时,它没有指向我的wampserver,我该如何解决?
谢谢
  hosts文件仅用于主机名parsing(在Windows以及类Unix系统上)。 你不能把端口号放在那里,并且没有办法用通用的操作系统级别的configuration来做你想要的 – 浏览器是select端口的select。 
 所以使用书签或类似的东西。 
  (某些防火墙/路由软件可能允许出站端口redirect,但这听起来不像是一个吸引人的选项。) 
您可以通过Fiddler 2应用程序修改主机文件来达到目的。
按着这些次序:
- 安装Fiddler2
- 导航到Fiddler2菜单: – 工具 > HOSTS ..(点击select)
像这样添加一行: –
localhost:8080 www.mydomainname.com- 保存文件,然后在浏览器中检出
www.mydomainname.com。
 我设法通过使用Windows包括networking工具netsh实现这一点。 
正如Mat指出的那样:hosts文件仅用于主机名parsing,所以两者的组合对我来说都是诀窍。
例
概观
 example.app:80 | <--Link by Hosts File +--> 127.65.43.21:80 | <--Link by netsh Utility +--> localhost:8081 
操作
-  在localhost:8081上启动我的服务器localhost:8081
-  将主机文件中的“本地DNS”添加为新行
-  127.65.43.21 example.app-  可以使用networking127.0.0.0/8中的任何空闲地址。
-   注意:我假设127.65.43.21:80没有被另一个服务占用。
-  你可以用netstat -a -n -p TCP | grep "LISTENING"netstat -a -n -p TCP | grep "LISTENING"
 
-  可以使用networking
 
-  
-  使用netsh命令实用程序添加了以下networkingconfiguration
-  netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.65.43.21 connectport=8081 connectaddress=127.0.0.1
 
-  
-  我现在可以通过http://example.app访问服务器
  笔记: 
  – 这些命令/文件修改需要使用pipe理员权限执行 
  – netsh portproxy需要ipv6库,甚至只使用v4tov4,通常它们也将被默认包含在内,否则使用以下命令安装它们: netsh interface ipv6 install 
您可以看到使用以下命令添加的条目 :
 netsh interface portproxy show v4tov4 
您可以使用以下命令删除条目 :
 netsh interface portproxy delete v4tov4 listenport=80 listenaddress=127.65.43.21 
资源链接:
- 使用Netsh
- 接口IP的Netsh命令
- 接口Portproxy的Netsh命令
- Windows端口转发示例
Fiddler2 – >规则 – >自定义规则
然后在下一个脚本的末尾find函数OnBeforeRequest:
 if (oSession.HostnameIs("mysite.com")){ oSession.host="localhost:39901"; } 
– 你可以使用127.0.0.0/8networking中的任何空闲地址,在我的情况下需要这个python烧瓶,这就是我所做的:在主机文件中添加这一行(你可以find它是windows下:C: \ Windows \ System32 \ drivers \ etc):
 127.0.0.5 flask.dev 
- 
确保端口是默认的端口“80”在我的情况下,这是在python烧瓶: app.run("127.0.0.5","80")
- 
现在运行你的代码并浏览 flask.dev
 如果发生的事情是你有另一台服务器运行在本地主机,你想给这个新的服务器一个不同的本地主机名像http://teamviewer/ 
我认为你实际上正在寻找的是虚拟主机function。 我使用Apache,所以我不知道其他Web守护进程如何支持这一点。 也许它被称为别名。 这里是Apache文档:
Apache虚拟主机的例子
最简单的方法是使用Ergo作为反向代理: https : //github.com/cristianoliveira/ergo
你设置你的服务和它的IP:PORT和ergo为你路由:)。
 你可以用nginx或者apache来实现,但是你需要configuration它们。