Nginx + passenger is only showing the root page / path, all other routes fail with 404 Not Found. I know nginx and passenger must be running to correctly bring up the root path. Here's the entry for sites-available:
server {
listen 80;
server_name staging.redacted.com; # Replace this with your site's domain.
passenger_enabled on;
passenger_app_env staging;
keepalive_timeout 300;
client_max_body_size 4G;
root /var/www/staging.redacted.com/current/public; # Set this to the public folder location of your Rails application.
#try_files $uri/index.html $uri.html $uri;
try_files $uri $uri/ =404;
}
routes.rb - even though they all work and pass their specs.
Rails.application.routes.draw do
resources :users
resources :brand_api_keys
resources :ir_service_buckets
resources :ir_service_images
resources :ir_services do
resources :ir_service_buckets do
resources :ir_service_images
end
end
resources :devices do
resources :scans
end
resources :images do
resources :scans
end
resources :campaigns do
resources :images
end
resources :agent_brands
resources :brands do
resources :brand_api_keys
resources :ir_service_buckets do
resources :ir_service_images
end
resources :agent_brands
resources :campaigns
end
resources :agents do
resources :brand_api_keys
resources :agent_brands
end
root 'agents#index'
end
Try removing try_files $uri $uri/ =404;
Remove or comment out the try_files
line completely and it will work.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With