在Windows主机文件中使用端口号

20 浏览
0 Comments

在Windows主机文件中使用端口号

安装了TeamViewer之后,我把wampserver端口改成了8080,因此地址为http://localhost:8080。

对于位于C:\\WINDOWS\\system32\\drivers\\etc\\的host文件,我也进行了如下更改

之前

127.0.0.1 www.example.com

之后

127.0.0.1:8080 www.example.com

当我访问www.example.com时,它没有重定向到我的wampserver,如何修复它?

admin 更改状态以发布 2023年5月19日
0
0 Comments

hosts文件仅用于主机名解析(在Windows和类Unix系统上都是如此)。您不能在那里输入端口号,也没有通用的操作系统级配置方式可以实现您所需的功能 - 浏览器会选择要使用的端口。

因此,请使用书签或类似的工具。
(某些防火墙/路由软件可能允许出站端口重定向,但这似乎并不是此问题的吸引人的选项。)

0
0 Comments

我使用了Windows自带的网络工具netsh实现了这个目标。

正如Mat所指出的,hosts文件仅用于主机名解析,所以将二者结合使用对我有用。

示例


概述

example.app:80
 |                           <--Link by Hosts File
 +--> 127.65.43.21:80
       |                     <--Link by netsh Utility
       +--> localhost:8081

步骤

  • localhost:8081上启动了我的服务器
  • 将我的“本地DNS”添加到hosts文件中作为新行
    • 127.65.43.21 example.app
      • 网络127.0.0.0/8中的任何可用地址(127.x.x.x)均可使用。
      • 注意:我假设127.65.43.21:80没有被其他服务占用。
      • 您可以通过netstat-a-n-p TCP | grep"LISTENING"检查。
  • 使用netsh命令实用程序添加了以下网络配置
    • netsh interface portproxy add v4tov4 listenport=80 listenaddress=127.65.43.21 connectport=8081 connectaddress=127.0.0.1
  • 我现在可以访问http://example.app上的服务器

注意:
- 这些命令/文件修改需要以管理员权限执行

- 即使只使用v4tov4,netsh portproxy需要ipv6库,通常它们也会默认包含,否则请使用以下命令进行安装:netsh interface ipv6 install


可以使用以下命令查看添加的条目

netsh interface portproxy show v4tov4

可以使用以下命令删除条目

netsh interface portproxy delete v4tov4 listenport=80 listenaddress=127.65.43.21


资源链接:

0