I'm running a sinatra app on passenger, and trying to hook it to nginx. The relevant part of my config looks like:

http {
    passenger_root /path/to/gem; #this is a valid path
    passenger_ruby /path/to/ruby; #ditto


    server {
        listen 80;
        server_name hello.org;
        root /path/to/stuff/public;
        passenger_enabled on;

Whenever I start nginx however, I get:

Starting nginx: [alert]: Phusion Passenger is disabled becasue the 'passenger_root' option is not set. Please set this option if you want to enable Phusion Passenger.

What am I missing here? Thanks!

2 Answers 2


I had the same issue as lowgain... using rvm + nginx, I installed passenger, which then recompiled nginx to include passenger stuff. Unfortunately, the old version was at /etc/nginx and the new version at /opt/nginx.

I had to remove nginx via apt:

sudo apt-get remove nginx

I also had to replace /etc/init.d/nginx with a new version. Once I was done with all that, it worked.


I had two installs of nginx after I rebuilt nginx with passenger support - the bash script was still reading from the old config!

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .