
問題:
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服務器,
本文來自博客園,作者:古道輕風,轉載請注明原文鏈接:https://www.cnblogs.com/88223100/p/Windows-7-HttpListener-Error.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/538488.html
標籤:C#
