Puma と Nginx 1.10 を使用して vps にデプロイされたチャット アプリケーションがあります。nginx の構成は次のとおりです。
upstream websocket {
server 127.0.0.1:28080;
}
server {
location /cable {
proxy_pass http://websocket/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
}
これは、ケーブルの config.ru ファイルです。
require ::File.expand_path('../../config/environment', __FILE__)
Rails.application.eager_load!
ActionCable.server.config.disable_request_forgery_protection = true
run ActionCable.server
environment/production.rb 内
config.action_cable.allowed_request_origins = ['http://ahu.mydomain.ir', 'https://ahu.mydomain.ir']
config.action_cable.url = "ws://ahu.mydomain.ir/cable"
クライアントがプロキシ サーバー経由でインターネットに接続され、Chrome コンソールで次のエラーが表示されます。
「ws://ahu.mydomain.ir/cable」への WebSocket 接続に失敗しました: プロキシ サーバー経由でトンネルを確立できませんでした
プロキシのない別のクライアントでは、すべて問題ありません。