![](/img/trans.png)
[英]Can't access to wamp/xampp apache localhost:80 WINDOWS 10
[英]Apache Server (xampp) doesn't run on Windows 10 (Port 80)
我已經安裝了Windows 10 Insider Program。 一切正常,除了Apache。 當我嘗試啟動它時,它表示端口80被阻止。 有沒有辦法取消阻止它或告訴Apache使用另一個端口?
我之前使用的是Windows 7。 我在使用Skype的端口80時遇到了麻煩,但我已將其禁用。
我在Windows 10上遇到了同樣的問題, IIS / 10.0正在使用端口80
解決這個問題:
法語名稱是:“ Service de publication World Wide Web ”
英文名稱是:“ World Wide Web Publishing Service ”
德語名稱是:“WWW-Publishingdienst” - 謝謝@fiffy
波蘭名稱是:“Usługasublikowaniaw sieci WWW” - 謝謝@KrzysDan
俄語名稱是“Службавеб-публикаций” - 謝謝@Kreozot
意大利名字是“Servizio Pubblicazione sul Web” - 感謝@ Claudio-Venturini
Español的名字是“ServiciodepublicaciónWorldWide Web” - 感謝@ Daniel-Santarriaga
葡萄牙語(巴西)的名字是“ServiçodepublicaçãodaWorld Wide Web” - 感謝@ thiago-born
備擇方案 :
sc stop W3SVC
來關閉服務 編輯2015年10月7日:有關更多詳細信息,請參閱Matthew Stumphy的答案Apache Server(xampp)無法在Windows 10(端口80)上運行
這個答案是作為paaacman在這個帖子中得到最高評價答案的補遺。 我只想為像我這樣不熟悉Windows 10的用戶添加一些有用的細節。
Windows 10在端口80上啟動期間自動運行IIS(Internet信息服務,Microsoft的Web服務器軟件)。為了在該端口上使用Apache Server,必須停止IIS。
paaacman的響應將IIS服務器稱為“W3SVC”或“萬維網發布服務”。 我想那是因為Windows 10將IIS作為服務運行。 要禁用它或修改服務的運行方式,您需要知道在系統中找到“服務”的位置。
我發現最簡單的方法是單擊Windows 10任務欄中“開始”菜單按鈕旁邊的搜索按鈕 ,然后鍵入“管理工具” 。 您可以點擊返回或點擊Windows找到的“管理工具”鏈接。
將打開一個控制面板窗口,其中包含一系列工具。 你想要的是“ 服務” 。 雙擊它。
另一個窗口將打開,稱為“服務”。 找到名為“ World Wide Web Publishing Service ”的名稱。 如果您的列表不是英文,則此主題中的其他一些用戶列出了其他語言的內容。
如果您只想關閉此Windows會話的IIS服務器,但希望它在下次啟動Windows時再次自動運行,請右鍵單擊“World Wide Web Publishing Service”並選擇“ 停止” 。 服務器將停止,並且將為Apache(或任何您想要使用它的其他任何東西)釋放端口80。
如果要在將來啟動Windows時阻止IIS服務器自動運行,請右鍵單擊“World Wide Web Publishing Serivce”並選擇“ 屬性” 。 在出現的窗口中,找到“啟動類型”下拉列表 ,並將其設置為“手動”。 單擊“應用”或“確定”以保存更改。 你應該全力以赴。
使用Windows 10 IIS默認在端口80上運行,可以更改:
運行appwiz.cpl
使用Turn Windows features on or off
並安裝IIS管理器控制台。
運行InetMgr.exe
並轉到“連接 - >站點”,然后右鍵單擊默認條目“默認網站”上的上下文菜單。 在“上下文菜單”中,選擇“綁定”以打開服務器地址和端口配置。
https://technet.microsoft.com/library/hh831681.aspx#Site_Bingings
我有完全相同的問題,並解決了它作為管理員從命令行運行folowing命令:
1)首先停止服務,具體如下
凈停止http / y
2)然后禁用啟動(可選)
sc config http start = disabled
輸入命令行
netstat -aon | findstr :80
您將看到使用端口80的進程的PID。然后嘗試將此應用程序配置為使用另一個端口,或者只是將其終止
更新:我在這里寫一下我的評論要更清楚:根據這個鏈接,在Windows 10中,它是占用端口80的MsDepSvc服務。它適用於IIS或Web Matrix 2.如果你不使用IIS或Web Matrix 2對於任何Web開發,您都可以嘗試關閉該服務
對於問題的第二部分,您可以通過編輯[Apache folder] /conf/httpd.conf告訴Apache使用另一個端口。 它有“Listen 80”字符串。 將80更改為您想要的任何空閑端口並重新加載Apache
您可能還需要終止SQL Server Reporting Services。
就我而言,我需要用於Apache開發的XAMPP和用於.Net 2013開發的IIS Express; 所以我做了以下事情:
在命令提示符下鍵入services.msc,這將加載“Windows服務”,我在其中找到“萬維網發布服務”並停止它。 萬維網發布服務STOP
我啟動XAMPP控制面板,單擊“配置”,然后選擇“Apache httpd.conf”。 搜索“80”,然后在“Listen 80”和“ServerName localhost:80”中將其更改為“8080”。 保存文件“另存為”並選擇“所有文件”不將其保存為“另存為類型”中的文本,“編碼”應為“UTF-8”。 Apache httpd.conf
退出XAMPP控制面板,然后再次啟動它,從“Action”啟動Apache和MySQL。 現在您將看到端口已更改。 如您所知,您必須使用“localhost:8080”而不是“localhost”訪問Apache服務器。 此外,您還可以在同一台Windows 10 PC中運行Apache和IIS Express。
我讀了一篇文章,作者建議使用端口“9080”,但它對我不起作用。
只要進程使用端口80,就會出現問題。
您可以運行XAMPP控制面板中提供的Netstat ,並檢查哪個進程使用系統中的端口80。
對我來說,它不是IIS ,而是Skype 。
關閉該進程/應用程序,然后啟動Apache服務。
我知道也許這個問題已經解決,但我遇到了不同解決方案的同樣問題。 為此,我將解釋另一種可能的解決方案。 在我的情況下,端口80被Skype占用(pid:25252),我不知道是什么程序。
要查看使用端口80的程序的pid,您可以使用其他人之前說過的命令:
netstat -aon | findstr 0.0:80
要使用pid終止進程(在您不知道程序的情況下),您必須使用管理員權限打開CMD並使用下一個命令:
taskkill /pid 25252
此命令的其他選項在此處 。
我知道這可能不是你問題的原因,但我已經花了幾個小時撞到牆上來解決這個問題,這是我的解決方案。
(運行Windows 10 x32)
所以我在一個深度嵌套的目錄中安裝了XAMPP,所有的conf文件都引用了root \\xampp\\apache
,而我的文件是some_dir\\another_dir\\whatthehelliswrongwithme\\finally\\xampp\\apache
所以我的選擇是要經過並編輯所有\\xampp\\apache
引用並將它們指向正確的位置,或者,更簡單的選項...在根目錄重新安裝XAMPP,因此引用都指向正確的位置。
有點煩人,但我猜這是我們得到的,當Mac和Windows試圖成為朋友..
希望它對你們中的一些人有所幫助。
如果您需要在端口80/443上運行IIS但在不同的IP地址上運行IIS,您可以使用netsh http add iplisten xxx.xxx.xxx.xxx
如下所述: https : //support.microsoft.com/en-us/幫助/ 954874 / IIS-結合到全部IP地址,一個服務器上,時任您安裝-IIS-7-0-上
有關netsh http add iplisten
更多詳細信息,請訪問: https : //msdn.microsoft.com/en-us/library/windows/desktop/cc307219.aspx
我認為更改Apache服務器端口很簡單
注意我正在使用服務器版本:5.1.41與Windows 10
關閉“某些系統進程”可能很棘手......您應該編輯@Sergey Maksimenko所提及的[Apache文件夾] /conf/httpd.conf,如果要配置虛擬主機,請使用[Apache]中的新端口文件夾] /conf/extra/httpd-vhosts.conf(我在[Apache文件夾] /conf/httpd-ssl.conf中使用了4900而不是80和4901而不是443)。 並記住在訪問localhost(或您的虛擬主機)上的頁面時使用該端口,例如:localhost:4900 / index.html
這個固定的node.js也沒有在Windows 10下的端口80上運行,我收到了一個listen eacces
錯誤。 開始>服務,找到“萬維網發布服務”並禁用它,就像paaacman描述的那樣。
我遇到了同樣的問題,上述解決方案都沒有對我有用。
Apache使用端口80和443(用於HTTPS),並且兩者都必須准備好用於Apache成功啟動。 只有80端口可能還不夠。
在我的案例中,我發現在運行VMWare Workstation時,我有VMware共享使用的端口443。
您必須在VMware主要首選項中禁用共享或更改本節中的端口。
之后,只要您沒有其他服務器連接到端口80(參見上面的解決方案),那么您應該能夠在XAMPP或任何其他Windows堆棧應用程序上啟動Apache或NGinx。
我希望這會有助於其他用戶。
雖然許多人正在采用這種方法來停止/禁用IIS,但知道您可以簡單地修改XAMPP端口可能會有所幫助,這已在此處得到解答。 這是我必須采取的路線,因為我需要兩個都跑。
除了非常明顯的原因(IIS)之外,還有另一個原因可以解決這個問題。 值得引用這個問題及其答案:
http://stackoverflow.com/questions/22994888/why-skype-using-http-or-https-ports-80-and-443
因此,如果您在計算機中安裝了Skype,請務必檢查這一點。 解決方案在這里引用:
要關閉和禁用Skype端口80和端口443的使用和偵聽,請打開Skype窗口,然后單擊“工具”菜單並選擇“選項”。 單擊“高級”選項卡,然后轉到“連接”子選項卡。 取消選中或取消選中“將端口80和443用作傳入連接的替代選項”復選框。 單擊“保存”按鈕,然后重新啟動Skype以使更改生效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.