2016-01-20 68 views
0

我爲dokku創建了流星的deploy guide,因爲那裏沒有人爲我工作。dokku流星的nginx配置

一切正常,但我有websocket connection錯誤: WebSocket connection to 'ws://pedidos3.postooliveira.com.br/sockjs/676/4r9udao6/websocket' failed: Error during WebSocket handshake: Unexpected response code: 400

這似乎是一個nginx的配置issue,但我不能使它工作。

我創建了一個nginx.conf.template文件的基礎上,original template from dokku

server { 
    listen  [::]:$NGINX_PORT; 
    listen  $NGINX_PORT; 
    server_name $NOSSL_SERVER_NAME; 
    access_log /var/log/nginx/${APP}-access.log; 
    error_log /var/log/nginx/${APP}-error.log; 

    location /{ 

    gzip on; 
    gzip_min_length 1100; 
    gzip_buffers 4 32k; 
    gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/x-javascript application/json application/xml application/rss+xml font/truetype application/x-font-ttf font/opentype application/vnd.ms-fontobject image/svg+xml; 
    gzip_vary on; 
    gzip_comp_level 6; 

    proxy_pass http://$APP; 
    proxy_http_version 1.1; 
    proxy_set_header Upgrade \$http_upgrade; 
    proxy_set_header Connection "upgrade"; 
    proxy_set_header Host \$host; 
    proxy_set_header X-Forwarded-Proto \$scheme; 
    proxy_set_header X-Forwarded-For \$remote_addr; 
    proxy_set_header X-Forwarded-Port \$server_port; 
    proxy_set_header X-Request-Start \$msec; 
    } 
    include $DOKKU_ROOT/$APP/nginx.conf.d/*.conf; 
} 

什麼是錯的這個配置?

回答

0

這是cloudflare的問題,它不支持免費計劃上的websockets。

該解決方案禁用CloudFlare代理(CloudFlare DNS設置中的「灰色雲」記錄)。