簡體   English   中英

如何在我的本地應用程序中啟用遠程訪問 - IIS Windows 10

[英]How to enable remote access in my local application - IIS Windows 10

我的機器上有一個應用程序,我可以通過localhost / myapplication正常訪問它,但是我正在與支付網站集成,這個網站需要一個網址給我發送有關交易狀態的通知,我知道我有沒有我的應用程序在線,它將訪問我的通知URL,但我需要在本地調試它。 有一種方法可以訪問我的應用程序即使在我的機器上? 我做了很多關於如何將IIS放到網上的研究,但它只是發現線程解釋了它是如何只在我所在的同一網絡中進行的。 我正在使用Windows 10和IIS,在asp.net mvc和C#上構建

我目前采取的方法是下載我們的免費VS擴展名為Conveyor https://visualstudiogallery.msdn.microsoft.com/a429dbb7-a982-4541-b401-934375c02c0f?redir=0

它允許localhost下的計算機連接到您的IIS Express應用程序。 目前還不夠,因為你還需要通過互聯網連接到它。 我們實際上正致力於支持這一功能。

如果您能夠將外部端口轉發到您的計算機,那么您可以這樣做。 例如,在家庭網絡中,只需進入您的路由器,並設置一個任意端口轉發到您的計算機,因此我們假設將端口50000轉發到您的計算機的IP並為其提供運行Conveyor的端口(通常為45455)。

然后,您可以使用網絡的公共IP和端口50000連接到您的應用。

例如。 在家庭網絡上,您的路由器可能具有公共IP 96.97.98.0,因此您將使用支付系統中的地址https://96.97.98.0:50000

我有一個與IIS Express類似的問題。 我需要從連接到家庭網絡的虛擬機訪問本地網站。

默認情況下,IIS Express偵聽TCPv6端口。 所以我不得不將它轉發到我的網絡接口上的某個TCPv4端口。

例如,如果您的網站運行在localhost:60000並且您希望它可以在192.168.1.50:3000訪問,則可以在管理控制台或powershell下的powershell中執行以下操作:

PS C:\Windows\system32> netsh
netsh>interface
netsh interface>portproxy
netsh interface portproxy>add v4tov6 listenport=3000 connectaddress=[::1] connectport=60000

現在,當您打開http:// localhost:3000 /http://192.168.1.50:3000/時,您應該會看到您的網站在60000端口上運行。

這是一篇博客文章 - http://programmingflow.com/2017/02/25/iis-express-on-external-ip.html

該解決方案是永久性的,您無需在重新啟動后重復配置,也不需要任何第三方軟件或更改您的網站配置。

唯一需要進行更多調整的方法是確保您的請求中包含正確的Host HTTP標頭,否則IIS Express可能會拒絕400 Bad request錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM