3

在我的 MacBook 上更新到 OS X Maverick 后,我的本地开发环境被破坏 - Mavericks 升级后 MacOSX 上缺少 Apache httpd.h 文件(** 为 Yosemite 更新**)

现在,在解决了这些问题之后,我似乎无法在端口 80 ( localhost) 上运行我的本地 Web 服务器。

如果我转到“localhost”,我会看到It works!默认的 apache 页面。

如果我运行,passenger start我可以查看我的应用程序,localhost:3000但这是一个正在运行的乘客独立 Web 服务器,而不是 apache。

如果我跑步,sudo passenger start -p 80 --user=martin我会收到以下消息:

The address 0.0.0.0:80 is already in use by another process,
perhaps another Phusion Passenger Standalone instance.

If you want to run this Phusion Passenger Standalone instance on another port,
use the -p option, like this:

passenger start -p 81

我不记得当我第一次在笔记本电脑上设置 Rails 时我做了什么,我确定我一passenger start开始就跑了,之后就不需要这样做了,从网上阅读更多关于它的信息,apache 应该运行乘客自动自动,但 apache 似乎没有做任何事情,只是显示默认起始页,我不知道为什么。

我认为 Maverick 创建了一个新的 httpd.conf 但我没有看到太大的区别,我确保运行passenger-install-apache2-module返回的三个额外行位于配置文件的末尾。

乘客 gem 是最新版本,Rails 版本是 2.3.14,而 ruby​​ 是 1.8.7 太老了,但没关系我不认为它localhost之前可以完美运行,而无需将端口 3000 添加到 url 所以只是希望有更多使用Passenger经验的人可以提供帮助。

我尝试阅读大量其他问题和论坛以及Phusion Apache 文档。`

4

2 回答 2

6

我有同样的问题。我恢复了以前的httpd.conf文件/etc/apache2。该文件已重命名httpd.conf.pre-update。我重新启动了服务器,apachectl restart一切都很好。

于 2013-10-23T22:04:20.433 回答
1

我检查了新旧 httpd.conf 文件之间的差异,它们非常小(但至关重要):

1) 包含虚拟主机的行已被注释掉。2) 包含 PHP 模块的行被注释掉了。

我取消了两条线的注释并解决了问题。

于 2013-10-24T15:33:03.797 回答