LINUX.ORG.RU
ФорумAdmin

nginx WebSocket 403

 ,


0

1

Соединение по WebSocket не стартует

WebSocket connection to ‘ws://domain.com:80/app/socket’ failed: Error during WebSocket handshake: Unexpected response code: 403

Nginx настроен по гуглу:

location /app/socket {
      proxy_pass http://127.0.0.1:777/app/socket;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";
      proxy_read_timeout 950s;
  }

Если потушить nginx и соединится на прямую с ws://domain.com:777/app/socket то все работает норм.

Технически сокет на одном хосте с веб-сервером а nginx нужен для перенаправления портов и ssl.

Я в тупике, подскажите куда копать?

Ответ на: комментарий от dev_as_part_of_live

точно никаких редиректов не происходит ?
попробуйте добавить
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;

Deleted
()
Ответ на: комментарий от Deleted

Редиректов нет, може что в самом конфиге?

user www-data;
worker_processes auto;
pid /run/nginx.pid;
include /etc/nginx/modules-enabled/*.conf;

events {
        worker_connections 768;
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

#       include /etc/nginx/mime.types;
#       default_type application/octet-stream;

        ##
        # SSL Settings
        ##

#       ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE
#       ssl_prefer_server_ciphers on;

        ##
        # Logging Settings
        ##

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        ##
        # Gzip Settings
        ##

        gzip on;

        # gzip_vary on;
        # gzip_proxied any;
        # gzip_comp_level 6;
        # gzip_buffers 16 8k;
        # gzip_http_version 1.1;
        # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;

        ##
        # Virtual Host Configs
        ##

        include /etc/nginx/conf.d/*.conf;

server {
        listen       443 ssl;
        server_name  domain.name;

       ssl on;
       ssl_certificate /opt/ssl/domain.name.crt;
       ssl_certificate_key /opt/ssl/privateKey.key;
       ssl_prefer_server_ciphers on;

       location / {
             proxy_pass http://localhost:777/app;

         }

        location /app/api {
             proxy_pass http://localhost:8080/app/api;
        }

        location /app {
             proxy_pass http://localhost:777/app/;
        }

        location /api {
             proxy_pass http://localhost:9999/api/;
        }

        location /app/socket {
         proxy_pass http://127.0.0.1:777/app/socket;
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection "upgrade";
         proxy_read_timeout 950s;
         proxy_set_header Host $host;
         proxy_cache_bypass $http_upgrade;
        }
    }
}
dev_as_part_of_live
() автор топика
Ответ на: комментарий от dev_as_part_of_live

в /etc/nginx/sites-enabled ничего нет ?

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.