c# web應用調試開啟外部訪問


此文分享來自http://www.cnblogs.com/polk6/archive/2017/01/03/6215659.html,這里只做記錄。

在用C#開發Web應用時有個痛點,就是本機用VS開啟Web應用調試時外部機器無法訪問此Web應用。這里將會介紹如何通過設置允許局域網訪問本機的Web應用。

第一步:設置啟動方式為IIS Express

Visual Studio 運行Web應用時,默認采用自身的Visual Studio開發服務器。所以先要把項目改為用 IIS Web服務器。

首先確保機器已經裝了IIS Express,下載地址(10.0版本):https://www.microsoft.com/zh-CN/download/details.aspx?id=48264

步驟:右鍵Web項目 → 屬性 → Web選項卡 → 勾選使用本地IIS Web 服務器 → 設置端口並點擊【創建虛擬目錄】按鈕

第二步:設置IIS Express的applicationhost.config文件

點擊上面操作的【創建虛擬目錄】按鈕后,會在IIS Express的applicationhost.config文件創建虛擬目錄信息。

文件默認路徑:%userprofile%\My Documents\IISExpress\config\applicationhost.config

找到上面應用程序的配置信息,添加一條<binding>

<binding protocol="http" bindingInformation="*:1851:*" />

示例圖

注意:修改前若已啟動了IIS Express,修改后需要重新啟動IIS Express才生效。

第三步:設置windows 防火牆

完成上面2步后,還需要設置防火牆允許此端口通過(如果你關閉了防火牆,那么這部可以省略)。

1) 圖形操作:

打開 Windows 防火牆的高級設置:

① 控制面板 → Windows 防火牆 → 高級設置

② 創建一條入站規則:協議TCP、端口為1851。

示例圖

2) 命令行

也可以執行以下命令添加一條入站規則:

netsh advfirewall firewall Add rule name=\"命令行Web訪問8081\" dir=in protocol=tcp localport=8081 action=allow

第四步:配置URL保留項

在Windows 7,可使用 Netsh.exe 工具配置HTTP設置,允許指定URL通過。

以管理員身份運行cmd命令:

netsh http add urlacl url=http://*:8081/ user=everyone

該命令為所有帳戶的指定 URL 命名空間添加一個 URL 保留項

示例圖

通過以上設置,就可以保證在調試的時候可以外網訪問了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM