我刚刚在 Ubuntu 中手动安装了 Apache HTTPD 2.2.14 服务器,如下所示这些说明(并使用所有默认选项)。由于我进行了手动安装,因此一旦我尝试安装 Apache 的乘客模块(通过passenger-install-apache2-module
),它就会找到所需的一切,除了 Apache。错误消息如下(我通过 synaptic 安装了其他所有内容,因此这些都没有问题):
- GNU C++ 编译器...位于 /usr/bin/g++
- 找到 Ruby 开发标头...
- 发现 Ruby 的 OpenSSL 支持...
- 找到 RubyGems...
- Rake... 在 /usr/bin/rake 找到
- 机架...找到
- Apache 2...未找到
- Apache 2 开发标头...位于 /usr/bin/apxs2
- Apache 可移植运行时 (APR) 开发标头...位于 /usr/bin/apr-1-config
- Apache 可移植运行时实用程序 (APU) 开发标头...位于 /usr/bin/apu-1-config
我怎样才能让乘客模块安装程序(或任何其他程序)检测 Apache 服务器安装?
答案1
这主要取决于所涉及的软件包以及它们的安装位置。如果您在软件包管理器之外安装了一个软件包,则可能需要在软件包管理器之外安装其他软件包。有些软件包允许您在编译时指定其依赖项的位置(通过其configure
脚本的标志)。
如果您将 Apache 安装到默认位置,则它可能位于/usr/local
。/usr/local/bin
在您的 PATH 中吗?尝试在运行 Passenger 安装脚本之前添加它。
如果你确实需要 Apache2 2.2.14 而不是 2.2.12(Karmic 存储库中提供),请考虑下载较新版本的源码包从 Lucid 存储库中下载并为 Karmic(或您正在使用的任何 Ubuntu 版本)构建您自己的软件包。这为您提供了使用系统软件包管理器的优势,并且乘客安装程序应该不会再有任何困难。
答案2
通常,配置脚本会有类似--with-apache2=/usr/local/apache2
或 之类的选项。 --prefix=/usr/local
也是一种可能性。尝试./configure --help
从 Passenger 的源目录运行,看看这些选项是否可用。
答案3
我遇到了同样的问题。检查是否有选项告诉您是否要取消或继续(按 Enter)。
按 Enter 键,安装程序将为您提供缺少软件包的安装命令(apt-get install
等)。这对我有用,到目前为止我还没有遇到任何问题。
查看Phusion Passenger 用户指南了解更多信息。