程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> C# Web應用調試開啟外部訪問,

C# Web應用調試開啟外部訪問,

編輯:關於.NET

C# Web應用調試開啟外部訪問,


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

目錄

1. 設置內網訪問

2. 設置外網訪問

 

1. 設置內網訪問

在設置之前,本機環境如下:

操作系統:win7

IDE:Visual Studio 2010

應用:ASP.net

想要實現局域網內其他機器訪問本機web應用包含以下4步:

 

第一步:設置啟動方式為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="*:8081:*" />

示例圖

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

 

第三步:設置windows 防火牆

完成上面2步後,還需要設置防火牆允許此端口通過。

1) 圖形操作:

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

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

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

示例圖

 

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 保留項

更多netsh資料,可訪問相關MSDN:配置 HTTP 和 HTTPS

 

運行圖

 

2. 設置外網訪問

設置好內網可訪問後,想要外網的小伙伴訪問本機,可通過以下2種方法:

1) 端口映射

2) 內網穿透

 

2.1 端口映射

前提條件:擁有路由器設置權限。

在對外的路由器中設置一條端口映射規則,訪問外部IP地址時跳轉到局域網機器上。具體操作這裡不闡述。

 

2.2 內網穿透

在公司內開發web應用時,不是所有人都可以申請端口映射的權限,所以這時候就要有個內網穿透的解決方案了。

網絡上提供內網穿透的應用有很多,這裡使用的是花生殼(官網:http://hsk.oray.com/)。

示例

注意:微信OAuth2.0進行域名跳轉時會加上端口號,此時域名端口為80,本機端口為8081,跳轉後的地址為域名:8081會顯示錯誤。解決方法只需要設置本機web應用的端口也為80即可。

 

運行圖

 

==================================系列文章==========================================

本篇文章:1.5 C# Web應用調試開啟外部訪問

C#文章導航

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved