Настройка passenger для ruby on rails и 404.
den.jmpr
nginx-forum at nginx.us
Tue Dec 11 11:56:55 UTC 2012
Я совсем новичок как в nginx, так и в passenger и в ruby on rails. Хотел бы
спросить, можно так настроить, чтобы при не нахождении адреса в routes
(rails), nginx показывал мне страницу 404.html, именно nginx, а не rails.
Я сделал вот так, но почему-то не работает:
1. В routes.rb указал последним вот такое правило:
match '*a', :to => 'errors#routing'.
2. Создал контроллер errors_controller вот с таким вот содержимым:
class ErrorsController < ApplicationController
def routing
render :file => "#{Rails.root}/public/404.html", :status => 404, :layout
=> false
end
end
3. В nginx.conf указал следующее:
server {
listen 80;
server_name localhost;
proxy_intercept_errors on;
location / {
root /web/rubyOnRailsApps/helloworld/public;
passenger_enabled on;
rails_spawn_method smart;
rails_env development;
error_page 404 /web/static/html/404.html;
}
}
Показывает страницу ror, а не nginx.
Posted at Nginx Forum: http://forum.nginx.org/read.php?21,233857,233857#msg-233857
Подробная информация о списке рассылки nginx-ru