2013-05-02 18 views
2

我試圖重啓我的Apache服務器,我對此很陌生。我很好奇 apache2重新啓動了什麼? apachectl重新啓動的功能是什麼?apachectl和apache2之間的區別

+2

請提供的路徑,這兩個命令,而你使用的是什麼操作系統。盲目的猜測是你的「apache2」命令來自你的發行版,並且它會調用「apachectl」命令。 – 2013-05-02 15:10:48

+1

在Debian中,例如'/ etc/init.d/apache2'是一個腳本,它使用'/ usr/sbin/apachectl'腳本調用鏈接到/ worker或prefork apache2的符號鏈接'/ usr/sbin/apache2'二進制文件在/ usr/lib/apache2/mpm-(prefork | worker | event)/ apache2中 – Wrikken 2013-05-02 19:15:52

回答

0

假設你是在Ubuntu或喜歡,一個man apache2如下指示:

一般情況下,應該的Apache2不能直接調用,而是 應通過/etc/init.d/apache2調用或apache2ctl。

FYI:的apachectl是apache2ctl的別名時下

作爲最佳實踐,建議發行sudo apache2ctl graceful

優美的說法,這是由它的含義預期,提供了更穩定的方式來重新啓動Apache進程,讓其子進程在重新加載配置之前完成正在進行的任務。

CF man apache2ctl

重啓:

重新啓動Apache後臺程序通過發送一個SIGHUP。

優美:

優雅地通過發送一個SIGUSR1重新啓動Apache後臺程序。如果 守護進程沒有運行,它將啓動。這不同於正常的 重新啓動,因爲當前打開的連接是 未中止。

Here is a reference about signalling SIGUSR1 as opposed to SIGHUP.