卢长明
vs中开发web站点使IIS Express支持局域网连接
来源:赵刚     发布时间: 2019-05-20      浏览次数:14

字号:

vs中开发web站点使IIS Express支持局域网连接

在开发webapi的时候,客户端设备都会使用局域网的地址访问webapi,有时候需要调试api。这个时候就需要使用一些技巧了,这里我记录了我常用的两种方式,在局域网内调试vs中的web站点1.修改IIS Express的applicationhost.config文件2.附加到进程调试两者都需要以管理员身份启动IIS

修改IIS Express的applicationhost.config文件

1.要想在局域网内调试vs中的web站点,这种方式是最简单的。先新建一个web站点,运行之后,在任务栏找到IISExpress 的图标,点击悬着“显示所有应用程序”,可以看到这个配置的路径,点击打开。2.找到sites节点,添加你的局域网的ip地址site节点下的bingings(复数形式),可以绑定多个信息。红框中是我添加的,可以看到bindingInfomation=“:53312:192.168.1.116”,这个192.168.1.116是我本机的地址,也可以修改为 :53312: *

3.注意的是必须是调试模式、管理员身份运行。否则会出现下面的错误4.在cmd中使用IIS Express开启所建的网站我们将““C:Program Files (x86)IIS Express”(64位)或“C:Program FilesIIS Express”(32位)”加入到系统变量,这个比较简单,忘的话百度一下就ok。将路径添加到系统变量的Path中来。打开cmd,输入appcmd就可以看到如下提示查看config文件的信息命令如下:

appcmd /apphostconfig:E:XamarinFormsDebugSample.vsconfigapplicationhost.config list site

我们可以在命令提示符中,使用iisexpress开启创建的网站,在控制台中输入一下这个站点id是2.

iisexpress /config:E:XamarinFormsDebugSample.vsconfigapplicationhost.config /siteid:2

这个是时候打开浏览器,你会发现http://localhost:53312/ 是可以访问的,但是http://192.168.1.116:53312/ 出现bad request 400错误无法访问。以管理员的方式打开cmd,为非管理员帐户保留指定的URLnetsh http add urlacl url=http://*:53312/ user=everyone记住要关闭防火墙,打开53312端口运行结果如图:

附加到进程调试

这种方式不太正经,不需要修改applicationhost.config文件。附加到进程调试的好处是。在进行断点调试,需要经过项目编译成功后,启动IIS Express 打开浏览器,最后进入我们的断点,附加到进程调试后节约时间。还可以调试局域网内的web站点。1.部署IIS站点刚刚新建的站点DebugSample,打开IIS添加这个站点目录。部署站点就不浪费时间了,百度起码有10万篇。

2.先在iis打开这个站点,然后管理员身份打开站点debugSample。选择调试>附加到进程

这样我们就可以在vs中调试客户端的请求了,

总结

1.修改IIS Express的applicationhost.config文件2.附加到进程调试,这两种方式都需要以管理员身份启动vs。附加到进程调试的优势在于不需要等待vs编译项目成功后启动IIS express,还可以进行客户端请求的调试,但是这种方式很多地方需要注意,只有你在实际操作过程去体会了

  • 相关内容: