Chr*_*ane 12 ruby-on-rails phusion-passenger apache-2.2
我在这里有一个 Apache 问题。
在我作为开发人员的整个职业生涯中,我一直像这样重新启动 Apache:
sudo /etc/init.d/apache2 restart
Run Code Online (Sandbox Code Playgroud)
我今天刚刚部署了我的第一个 Rails 应用程序,但是我无法让 Apache 在主机上重新启动。当我以这种方式尝试时,Apache 会尝试重新启动,但最终会挂起。
然而,这工作得很好:
sudo apachectl restart
Run Code Online (Sandbox Code Playgroud)
这两种技术有什么区别?我曾假设后者充其量只是第一个的“语法糖”,但事实并非如此,因为后者有效而前者无效。
如果它是相关的(我怀疑它可能是相关的),这个 Rails 应用程序使用 Phusion Passenger。我之前的开发经验(前一种方法工作正常)主要是使用 PHP。我对 Rails 很陌生。
有问题的服务器运行 Ubuntu 11.04 (Natty)。
小智 6
sudo /etc/init.d/apache2 restart
Run Code Online (Sandbox Code Playgroud)
此方法使用 Linux 发行版的init 脚本重新启动该过程。这些脚本在启动时运行以启动 apache。
sudo apachectl restart
Run Code Online (Sandbox Code Playgroud)
该方法使用apachectl控制程序。几乎在每个场合,我都会推荐使用 apachectl 来操作 apache 守护进程。您可以更精细地控制进程如何重新启动(请参阅优雅与重新启动)、配置验证选项和获取状态信息的方法。
使用 init 脚本重新启动 apache 和 apachectl 之间的主要区别在于,apachectl 专门设计用于允许管理员控制 apache,而 init 脚本被设计为 Unix 的通用方式,以便在内核和 init daeamon 加载后启动进程。
编辑:不幸的是,我不知道如何使用 Rails 或 Phusion Passenger 解决您的问题。尝试查看您的Apache 日志以寻找线索。
归档时间: |
|
查看次数: |
1043 次 |
最近记录: |