Passenger is an application server for Ruby (Rack) and Python (WSGI) apps.
Some notes on installing it:
https://www.phusionpassenger.com/download
Ignore the docs that suggest:
$ sudo gem install passenger
$ sudo passenger-install-apache2-module
Instead use:
gem install passenger
should be sufficient and rvm.io suggests just running:
passenger-install-apache2-module
See also:
http://stackoverflow.com/questions/17245105/passenger-module-fails-to-install
and
http://stackoverflow.com/questions/17248660/installing-passenger-use-sudo-rvmsudo-or-nothing
Then, paste the LoadModule code it spits out at the end into your Apache conf file.
Test whether Passenger has installed by running:
curl -sI localhost | grep ^Server
and check for the “Phusion_Passenger” signature. E.g.
Server: Apache/2.2.22 (Unix) DAV/2 PHP/5.3.15 with Suhosin-Patch Phusion_Passenger/4.0.5 mod_ssl/2.2.22 OpenSSL/0.9.8x
If you need to uninstall Passenger using sudo then:
$ sudo gem uninstall passenger
And a discussion on whether to use rvmsudo or not here:
https://groups.google.com/forum/#!topic/rubyversionmanager/9dnmAsTiHR4
In short, https://www.phusionpassenger.com/download
suggests using sudo
but the rvm page suggests not:
https://rvm.io/integration/passenger
Note:
If you get a warning doing the passenger install apache2 module like this:
rvmsudo rvm get stable && rvm reload && rvmsudo rvm repair all
Warning: can not check /etc/sudoers
for secure_path
, falling back to call via /usr/bin/env
, this breaks rules from /etc/sudoers
. Run:
export rvmsudo_secure_path=1
Then run:
export rvmsudo_secure_path=1
and:
rvmsudo rvm get stable && rvm reload && rvmsudo rvm repair all
(remember to run rvm requirements
afterwards)
On the Mac the Apache conf and restart commands go like this:
[~]$ sudo vim /etc/apache2/httpd.conf
[~]$ sudo apachectl restart
See also:
https://developer.apple.com/library/mac/#featuredarticles/PhusionRails/_index.html