一尘不染

使用 IP 地址而不是 localhost 浏览网站

ip

我正在使用带有 IIS Express 的 VS2012,并且似乎无法使用我的 IP 地址浏览我的网站。有没有办法做到这一点?它曾经与早期版本的 VS 一起工作得很好。

例如,此地址可以正常工作:

http://localhost:64651/

但是,这个地址不起作用。

http://192.168.252.165:64651/

我确定 IP 地址,因为我刚刚使用 ipconfig 获得了它。


阅读 217

收藏
2022-05-12

共1个答案

一尘不染

转到您的IISExpress>Config文件夹,找到applicationhost.config. 更改<bindings>如下:

<bindings>
      <binding protocol="http" bindingInformation="*:1407:YOUR_IP_ADDRESS" />
</bindings>

在执行此操作之前,您必须使用netsh以下命令注册此 IP 地址:

Windows 7 中的端口转发

如果您运行的是 Windows 7,则几乎所有传入连接都被锁定,因此您需要专门允许到您的应用程序的传入连接。首先,启动管理命令提示符。其次,运行这些命令,将 192.168.1.11:1234 替换为您使用的任何 IP 和端口:

> netsh http add urlacl url=http://192.168.1.11:1234/ user=everyone

这只是说明http.sys可以与此 url 交谈。

重要提示:必须根据系统语言指定 user=everyone 参数。因此,如果您的 Windows 语言是西班牙语,则参数必须是 user=todos。

> netsh advfirewall firewall add rule name="IISExpressWeb" dir=in protocol=tcp localport=1234 profile=private remoteip=localsubnet action=allow

这会在 Windows 防火墙中添加一条规则,允许本地子网上的计算机到端口 58938 的传入连接。有关此链接的更多信息。

端口转发 Mac OS X

步骤 1:查看当前防火墙规则

sudo ipfw show

步骤 2:添加端口转发规则(80 到 8080)

Tomcat 运行的默认端口是 8080,所以这里我们展示从端口 80 到 8080(Tomcat 的默认端口)进行端口转发的命令。显然,这也适用于其他端口,您只需要相应地调整命令。

sudo ipfw add 100 fwd 127.0.0.1,8080 tcp from any to any 80 in

这是临时更改,重启后会恢复。如果你想让它永久化,你可以为它创建一个 lauch 守护进程。

可选删除规则

如果要删除防火墙规则,请运行:

sudo ipfw flush

在 Mac OS X 上使用 PFCTL(又名 PF)进行端口转发

的设置pfctl类似于ipfw。Github 用户 kujon 创建了一个很好的指南来展示如何使用pfctl.

注意:确保仅通过查找项目名称来更改项目的绑定。您甚至可以保留 localhost 绑定并添加一个新绑定,这样您就可以使用给定的 IP 地址和旧的 localhost 绑定访问同一个网页。

2022-05-12