Windows 7環境下HttpListener拒絕訪問異常解決方法

 

 

問題:

Win7下在嘗試搭建簡單http服務器的時候,執行httpListener.Start();報錯HttpListener拒絕訪問異常

 


代碼如下:

HttpListener httpListener = new HttpListener();//創建服務器監聽
httpListener.Prefixes.Add("http://+:8080/");//配置監聽地址。+代表本機可能的IP如localhost、127.0.0.1、192.168.199.X(本機IP)等;
httpListener.Start(); //開啓對指定URL和端口的監聽,開始處理客戶端輸入請求。

 

 

解決方法:


以管理員CMD命令行執行:
①先刪除可能存在的錯誤urlacl,這裏的*號代指localhost、127.0.0.1、192.168.199.X本地地址和+號等。
命令:netsh http delete urlacl url=http://*:8080/ 
舉例:netsh http delete urlacl url=http://+:8080/ 


②將上面刪除的*號地址重新加進url,user選擇所有人
命令:netsh http add urlacl url=http://*:8080/  user=Everyone
舉例:netsh http add urlacl url=http://+:8080/  user=Everyone


③CMD配置防火牆
netsh advfirewall firewall Add rule name=\"命令行Web訪問8080\" dir=in protocol=tcp localport=8080 action=allow
經過如上設置服務端就可以以httpListener.Prefixes.Add("http://+:8080/");監聽地址開啓監聽。

客戶端可以通過訪問服務端8080端口。服務端本機也可以在瀏覽器中以localhost和127.0.0.1訪問自身http服務器。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章