我有一个Ubuntu服务器(11.10)并使用mod_passenger用于Redmine。它的效果非常好,但在第一次运行时会有所缓慢(偶尔)。
我用Google搜索并进入此处: http://www.modrails.com/documentation/Users%20guide%20Apache.html#PassengerMinInstances
但是我无法设置任何指定的选项。他们只是不工作。 我试过了:
无论我在哪里放置像'PassengerMinInstances 3'这样的命令并尝试重新加载Apache,我都会得到:
Syntax error on line 9 of /etc/apache2/sites-enabled/redmine:
Invalid command 'PassengerMinInstances', perhaps misspelled or defined by a module not included in the server configuration
Action 'configtest' failed.
The Apache error log may have more information.
...fail!
当然,行和文件不同。 日志没有任何相关内容。
答案 0 :(得分:8)
Ubuntu附带较旧的Passenger版本,但尚未支持PassengerMinInstances
选项。
作为替代方案,您可以将PassengerPoolIdleTime
和PassengerMaxRequests
设置为相当高的值,以防止空闲实例被回收。
您还可以使用Phusion提供的Ubuntu包。有关该内容的详情,请参阅http://wiki.brightbox.co.uk/docs:phusion-passenger
最后,您还可以使用rubygems安装当前版本的Passenger。为此,删除libapache2-mod-passenger
包并运行:
sudo aptitude purge libapache2-mod-passenger
sudo apt-get install rubygems build-essential apache2-prefork-dev libapr1-dev libssl-dev zlib1g-dev
sudo gem install passenger
sudo /var/lib/gems/1.8/bin/passenger-install-apache2-module
它将编译和安装乘客。最后,它将输出您需要放入/etc/apache2/mods-available/passenger.load
。
然后通过运行
启用乘客sudo a2enmod passenger
sudo /etc/init.d/apache2 restart
一切都应该好。
答案 1 :(得分:0)
您是否将其放在加载Passenger模块的同一文件中?例如。你把这些线放在看起来像下面这一行的线下吗?
LoadModule passenger_module /usr/local/rvm/gems/ruby-1.9.2-p180@rails31/gems/passenger-3.0.9/ext/apache2/mod_passenger.so