http://blog.tnantoka.com/posts/56
みたいにNginxで返してるとUnicornが落ちてもOutOfServiceになってくれない。
Nginxの設定を以下のように変更。
upstream example {
server unix:/tmp/unicorn-example.socket;
}
server {
listen 80 default_server;
server_name _;
location / {
return 301 https://example.com$request_uri;
}
location = /healthcheck {
proxy_pass http://example;
break;
}
}
Railsは/healthcheck
でok
を返す。
class WelcomeController < ApplicationController
# 認証とかSkipする。
skip_before_action :foo, only: [:healthcheck]
skip_before_action :bar, only: [:healthcheck]
def healthcheck
render plain: 'ok'
end
end
ログが無駄にでるけど、返せなかった時にログあった方が楽なので、ひとまずこのままにしている。