У меня есть веб-сервер, работающий на порту 9000. Я хочу сделать его доступным на порту 80, а также хочу сделать подключение к веб-сокету доступным на порту 9021. Если я запускаю это через http
, все работает нормально. Но когда я перехожу на https
, веб-розетка не может быть подключена.
Вот мой конфиг nginx: это выдает предупреждение:
nginx: [warn] conflicting server name "oyun.net" on 0.0.0.0:443, ignored
server {
listen 443 ssl;
server_name oyun.net;
ssl_certificate /etc/key.pem
ssl_certificate_key /etc/key2.pem
listen 80;
location / {
proxy_pass http://localhost:9000
}
}
server {
listen 443 ssl;
server_name oyun.net;
ssl_certificate /etc/key.pem
ssl_certificate_key /etc/key2.pem
listen 9021;
location / {
proxy_pass http://localhost:9000;
proxy_http_version 1.1;
proxy_set_header upgrade $http_upgrade;
proxy_set_header connection "upgrade";
proxy_set_header x-real-ip $remote_addr;
proxy_set_header host $host;
proxy_set_header x-forwarded-for $proxy_add_x_forwarded_for;
}
}
Вот ошибка браузера:
WebSocket connection to 'wss://oyun.net:9021/socket/v1?sri=tcylqwzjnl' failed:
Error in connection establishment: net::ERR_SSL_PROTOCOL_ERROR