HOWTO · Linux
如何在 Linux 中啟動、停止和重新啟動 Apache 網路伺服器
我們可以在 Linux 中分別使用啟動、停止和重啟命令來啟動、停止和重啟 Apache 網路伺服器。
本頁內容
Apache 在不同 Linux 發行版中使用不同的服務名稱:Ubuntu 和 Debian 使用 apache2,Red Hat 系列發行版則使用 httpd。請使用適用於您發行版的命令,並以具有 sudo 權限的帳戶執行;不需要以 root 身分登入。以下範例會在系統支援 systemctl 時使用它,也會列出支援該介面的系統可用的 service 命令形式。這些依主機環境而異的命令並未在此執行。
在 Ubuntu 和 Debian 系列發行版上啟動、停止及重新啟動 Apache
在 Ubuntu 和 Debian 上,Apache 服務的名稱是 apache2。如果您的系統提供 systemctl,請使用以下命令:
- 啟動 Apache:
sudo systemctl start apache2 - 停止 Apache:
sudo systemctl stop apache2 - 重新啟動 Apache:
sudo systemctl restart apache2
重新啟動會先停止服務,再將它啟動。設定變更需要重新啟動時,通常會使用這個操作;請參考應用程式或模組的指引,因為有些變更可能需要採取其他操作。若系統支援 service 介面,可執行 sudo service apache2 start、sudo service apache2 stop 或 sudo service apache2 restart。
如果您的系統支援 systemctl,可使用 sudo systemctl status apache2 檢查服務是否正在執行。如果服務無法啟動,請查看狀態輸出和該服務的系統日誌,再檢查 Apache 設定,以及訊息中指出的檔案或連接埠衝突。/var/log/apache2/error.log 是 Debian 系列常見的錯誤日誌位置,但日誌設定可能會改變此路徑。若要讓 Apache 在使用 systemctl 的系統上於開機時自動啟動,請執行 sudo systemctl enable apache2;啟用開機自動啟動與立即啟動服務是兩個不同操作。
在 Red Hat 系列發行版上啟動、停止及重新啟動 Apache
在 Red Hat 系列發行版上,Apache 服務的名稱是 httpd。如果系統支援 systemctl,請使用以下命令:
- 啟動 Apache:
sudo systemctl start httpd - 停止 Apache:
sudo systemctl stop httpd - 重新啟動 Apache:
sudo systemctl restart httpd
重新啟動會先停止服務,再重新啟動。設定變更需要重新啟動 Apache 時,請使用此操作。若系統支援 service 介面,對應的命令是 sudo service httpd start、sudo service httpd stop 和 sudo service httpd restart。請選用系統實際提供的命令;僅憑發行版名稱或版本號,無法判定系統支援哪種服務管理工具。
如果您的系統支援 systemctl,可使用 sudo systemctl status httpd 檢查服務。如果服務無法啟動,請查看狀態詳細資訊和服務日誌,再檢查 Apache 設定以及訊息指出的原因。/var/log/httpd/error_log 是 Red Hat 系列系統常見的錯誤日誌路徑,但實際設定的路徑可能不同。您可以執行 httpd -v 檢查是否已安裝 Apache;在 Ubuntu 或 Debian 上則使用 apache2 -v。如果系統找不到該命令,請先安裝適用於您發行版的 Apache 套件,再嘗試啟動服務。若要在使用 systemctl 的系統上啟用開機自動啟動,請執行 sudo systemctl enable httpd;這項設定不會立即啟動 Apache。