我希望我沒有運行 WAMP 的伺服器,但我有。在 Linux 上我只會做sudo service restart httpd
或apache2
做任何事。但對於 WAMP 呢?我沒有任何線索。
工作列的通知區域中有一個圖標,點擊該圖標會顯示一個選單:
如果我單擊“停止所有服務”或“置於離線狀態”,然後訪問http://127.0.0.1/在 Firefox 中我仍然看到網站正在提供服務。
https://stackoverflow.com/a/5065551/569976說到做到cd C:/wamp/bin/apache/apache2.2.8/bin; httpd --start
。這樣做會給我這個錯誤:
[Tue Sep 29 17:06:11 2015] [warn] _default_ VirtualHost overlap on port 443, the first has precedence
(OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
我也嘗試過httpd --restart
並得到同樣的錯誤。
當我執行「開始」->「執行」-> services.msc 時,我沒有看到 Apache 服務。我看到一個 wampapache 服務,但它的狀態不是「已啟動」。
當我這樣做時,netstat -a -b
我看到這個:
Proto Local Address Foreign Address State PID
TCP MYSERVER:http MYSERVER.MYCOMPANY.local:0 LISTENING 4168
[httpd.exe]
這很酷。但我不知道 httpd.exe 檔案位於何處。我以為它是活在C:/wamp/bin/apache/apache2.2.8/bin
但我不知道。
有任何想法嗎?
答案1
有多種方法可以使用 WAMPServer 啟動和停止 Apache 和/或 MySQL
從選單系統 wampmanager :
wampmanager -> Apache -> Service -> Start/Resume service
wampmanager -> Apache -> Service -> Stop service
wampmanager -> Apache -> Service -> Restart service
wampmanager -> MySQL -> Service -> Start/Resume service
wampmanager -> MySQL -> Service -> Stop service
wampmanager -> MySQL -> Service -> Restart service
這些選單選項甚至可以根據服務目前是否正在運行來啟用和停用自身,因此透過查看可用性,您可以了解服務目前是否正在運行。
或者,如果您喜歡使用命令列:
net start wampapache
net start wampmysqld
net stop wampapache
net stop wampmysqld
當然,如果您使用 64 位元 WAMPServer 並因此使用 64 位元 Apache,則命令將是
net start wampapache64
net start wampmysqld64
net stop wampapache64
net stop wampmysqld64
錯誤訊息當然意味著您沒有正確配置 Apache。檢查您的配置變更。
在這種情況下,選單Put Online
選項是無關緊要的,因為所做的只是修改文件httpd.conf
以更改對伺服器的允許訪問,從“離線”僅本地訪問和“在線”,允許來自任何 IP。