Search code examples
ruby-on-railsnginxpassengerrbenvubuntu-16.10

passenger wont find public path


I'm trying to setup my rails server and passenger wont recognize my app giving this error on log:

[error] 1473#1473: *1 "/home/myapp/public/index.html" is not found (2: No such file or directory)

or a 404 error in client.

i've done all troubleshooting possiilities to resolve but nothing.

here is my server block:

server {
    listen 80;
    server_name mydomaiin.com;
    rails_env development;

   # Turn on Passenger
   passenger_enabled on;
   passenger_ruby /home/myapp/.rbenv/versions/2.4.0/bin/ruby;

   # Tell Nginx and Passenger where your app's 'public' directory is
   root /home/myapp/public;
}

can anyone help me?

thanks


Solution

  • As your root dir is in /home/myapp/myapp, update your server conf:

    server {
        listen 80;
        server_name mydomaiin.com;
        rails_env development;
    
       # Turn on Passenger
       passenger_enabled on;
       passenger_ruby /home/myapp/.rbenv/versions/2.4.0/bin/ruby;
    
       # Tell Nginx and Passenger where your app's 'public' directory is
       root /home/myapp/myapp/public;
    }