状況
ローカルでは投稿に対してのコメントができる(ajax)のに、本番環境ではできていなかった。
原因
本番環境でactioncableが使えない状況だった
解決方法
EC2内
$ sudo vim /etc/nginx/conf.d/rails.conf
以下を貼り付ける。
/etc/nginx/conf.d/rails.conf
upstream app_server {
server unix:/var/www/アプリケーション名/shared/tmp/sockets/unicorn.sock;
}
server {
#省略
# -------------------ここから-------------------
# /cableのパスに対してwebsocketの仕組みを用いるための設定
location /cable {
proxy_pass http://app_server/cable;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection Upgrade;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
# -------------------ここまでを追記-------------------
#省略
}
これで、自分はコメント(ajax)ができるようになりました。
参考