RubyonRails和php在web服务器Apache上的同时操作

RubyonRails和php在web服务器Apache上的同时操作,php,ruby-on-rails,ruby,apache,debian,Php,Ruby On Rails,Ruby,Apache,Debian,在运行Debian并运行用php5编写的web服务的远程服务器上 在从php过渡到RubyonRails时,我想同时操作ApachePHP应用程序和RubyonRails应用程序 我知道可以使用passenger实现,但安装时遇到了问题。因此,在终端中,我正在做: passenger-install-apache2-module 在安装过程中,将显示以下消息: 1) 警告:Apache似乎没有使用“prefork”进行编译, “工作者”或“事件”MPM Phusion Passenger仅在A

在运行Debian并运行用php5编写的web服务的远程服务器上

在从php过渡到RubyonRails时,我想同时操作ApachePHP应用程序和RubyonRails应用程序

我知道可以使用passenger实现,但安装时遇到了问题。因此,在终端中,我正在做:

passenger-install-apache2-module
在安装过程中,将显示以下消息:

1) 警告:Apache似乎没有使用“prefork”进行编译, “工作者”或“事件”MPM

Phusion Passenger仅在Apache上使用“prefork”进行了测试, “工作者”和“事件”MPM。 您的Apache安装是使用
“itk”MPM。我们建议您中止此安装程序并 使用 “预工作”、“工作者”或“事件”MPM

之后:
sudo apt get install apache2 mpm prefork
-Apache停止工作

如果继续安装,将出现以下问题:

2) 请编辑Apache配置文件,并添加以下行:

装载模块乘客舱 /home/user/.rvm/gems/ruby-2.1.3/gems/passenger-4.0.53/buildout/apache2/mod_passenger.so PassengerRoot/home/user/.rvm/gems/ruby-2.1.3/gems/passenger-4.0.53 PassengerDefaultRuby/home/user/.rvm/gems/ruby-2.1.3/wrappers/ruby

但如果我将这些行放在配置文件中,php将停止工作

谁能说出如何解决这个问题?
[
嗯,困难来了

sudo apt获取安装libapache2模块乘客

工作正常
但是,我仍然不明白如何为php和RubyonRails配置apache。
您能否举例说明httpd、站点可用、mods可用的设置示例;
适用于硬盘上任意位置的Ruby应用程序;
我希望它不会超出这个问题。

]

我猜,当您尝试使用prefork MPM时,Apache会中断,因为您使用的是特定于ITK MPM的选项,而没有将它们包装到IFM模块中。由于您已从ITK切换到prefork,这些选项不再有效。此类选项的一个示例是
AssignUserID
。如果是这样的话,您会在错误日志中发现关于未知选项的投诉

您使用ITK MPM的具体原因是什么?对于乘客来说,它并没有经过很好的测试,但它应该可以工作,因为上面列出了一些针对ITK的提示

关于乘客的
LoadModule
:您把这些线路放在哪里了?您是否创建了例如可以启用的
/etc/apache2/mods available/passenger.load
文件?然后乘客模块将在PHP模块之前加载(“pa”在“ph”之前),如果出现这种情况,这可能是您出现问题的原因,尽管如果无法加载模块,Apache通常不会启动

Apache错误日志中是否有任何有用的信息,例如无法加载PHP模块


你也可以考虑使用PHUVE的可用性。我和他们相处得很好。依赖项列出了apache2 mpm itk,因此我有理由相信它们应该可以工作。

虽然Apache和Passenger被用作堆栈溢出的工具,但您可能会得到更好的响应。谢谢您的建议,我将try@theTinMan不鼓励交叉发布,您只向我们发送了一个用户,我们不得不在那里结束问题。下次推荐其他网站时,请至少说明问题可以根据OP的意愿迁移,不应该复制到其他地方。