apache-2.2 – 重启Apache的不同方法?

我在这里有一个Apache问题.

在我作为开发人员的整个职业生涯中,我一直在重启Apache,如下所示:

sudo /etc/init.d/apache2 restart

我今天刚刚部署了我的第一个Rails应用程序,但是我无法让Apache在主机上重启.当我尝试这种方式时,Apache会尝试重启,但最终会挂起.

然而,这很好:

sudo apachectl restart

这两种技术有什么区别?我认为后者充其量只是第一个“语法糖”,但事实并非如此,因为后者有效,而前者没有.

如果它是相关的(我怀疑它可能是),这个Rails应用程序使用Phusion Passenger.我之前的开发经验(以前的方法工作正常)主要是使用PHP.我对Rails很新.

有问题的服务器运行Ubuntu 11.04(Natty).

sudo /etc/init.d/apache2 restart

此方法使用Linux发行版的init scripts重新启动该过程.这些脚本在引导时运行以启动apache.

sudo apachectl restart

此方法使用apachectl控制程序.在几乎每一个场合,我都会建议使用apachectl来处理apache守护进程.您可以更精细地控制进程重新启动的方式(请参阅正常与重新启动),配置验证选项以及获取状态信息的方法.

使用init脚本重新启动apache和apachectl的主要区别在于apachectl专门设计为允许管理员控制apache,而init脚本被设计为Unix在启动内核和init daeamon之后启动进程的通用方法.

编辑:不幸的是,我不知道如何解决你的Rails或Phusion Passenger的问题.尝试通过Apache logs查找线索.

翻译自:https://serverfault.com/questions/274697/different-ways-to-restart-apache

转载注明原文:apache-2.2 – 重启Apache的不同方法?