Size: a a a

Node.js — русскоговорящее сообщество

2020 February 05

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
игрался с cors но результата не дало
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
спасибо
источник

YK

Yehór Kashperskyi in Node.js — русскоговорящее сообщество
А что дока по совету говорит?
источник

YK

Yehór Kashperskyi in Node.js — русскоговорящее сообщество
Или по нгинх
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
делал по мануалу, который прям для этой связки
источник

HS

Hulko Svyat in Node.js — русскоговорящее сообщество
server {
   server_name socket.example.com;
   location / {
       proxy_pass http://ec2-87-949-256-001.eu-central-1.compute.amazonaws.com:3010/;
       proxy_http_version 1.1;
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "upgrade";
       proxy_read_timeout 86400;
   }

   if ( $host ~* ^www\.(?<nowww>.*)$ ) {
     rewrite .* $scheme://$nowww$request_uri permanent;
   }

   listen 443 ssl; # managed by Certbot
   ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
   ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
   include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
   ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
server {
   if ($host = socket.example.com) {
       return 301 https://$host$request_uri;
   } # managed by Certbot


   server_name socket.example.com;

   listen 80;
   return 404; # managed by Certbot


}
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
у socket.io есть документашка для работы с Nginx
источник

YK

Yehór Kashperskyi in Node.js — русскоговорящее сообщество
Просто Пашка
делал по мануалу, который прям для этой связки
Ну а что там есть насчёт 401?
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
такого нет, нашел с такой же ошибкой тикет на гите, но там немного другой баг связанный с ff и все
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
конфиг для сайта
server {
 listen               443 ssl; # managed by Certbot
 server_name          *** www.***;
 error_log            /var/log/nginx/***/error crit;

 location / {
   add_header          Access-Control-Allow-Origin https://*** always;
   add_header          Access-Control-Allow-Credentials true always;

   proxy_pass          http://127.0.0.1:9000;
   proxy_http_version  1.1;
   proxy_set_header    Upgrade $http_upgrade;
   proxy_set_header    Connection "upgrade";
   proxy_buffering     off;
 }
}
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
proxy_params
proxy_redirect        off;
proxy_set_header      Host $host;
proxy_set_header      X-Real-IP $remote_addr;
proxy_set_header      X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass_header     Set-Cookie;
proxy_buffers         4 256k;
proxy_connect_timeout 30s;
proxy_send_timeout    90s;
proxy_read_timeout    90s;
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
nginx.conf
 user                               www-data;
worker_processes                   auto;
worker_rlimit_nofile               8192;
error_log                          /var/log/nginx/error.log;
pid                                /var/run/nginx.pid;

events {
 worker_connections                 1024;
 use                                epoll;
 multi_accept                       on;
}

http {
 sendfile                           on;
 tcp_nopush                         on;
 tcp_nodelay                        on;
 client_header_timeout              60s;
 client_body_timeout                60s;
 client_header_buffer_size          2k;
 client_body_buffer_size            128k;
 client_max_body_size               80m;
 large_client_header_buffers        4 8k;
 send_timeout                       60s;
 keepalive_timeout                  30s;
 reset_timedout_connection          on;
 server_tokens                      off;
 server_name_in_redirect            off;
 server_names_hash_max_size         512;
 server_names_hash_bucket_size      512;

 log_format                         main '$remote_addr - $remote_user [$time_local] $request '
                                         '"$status" $body_bytes_sent "$http_referer" '
                                         '"$http_user_agent" "$http_x_forwarded_for"';
 log_format                         bytes '$body_bytes_sent';
 access_log                         off;

 error_page                         403 /error/403.html;
 error_page                         404 /error/404.html;
 error_page                         502 503 504 /error/50x.html;

 include                            /etc/nginx/mime.types;
 default_type                       text/html;

 include                            /etc/nginx/proxy_params;
 include                            /etc/nginx/conf.d/https.conf;
 include                            /etc/nginx/conf.d/ssl.conf;
 include                            /etc/nginx/sites-enabled/*.*;
}
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
ну и сам Nodejs
app.js
const express = require('express');
const helmet = require('helmet');
const cors = require('cors');
const dotenv = require('dotenv');

const corsWhitelist = require('./whitelist');

dotenv.config();

const app = express();

app.use(helmet());

app.use(cors({ origin: corsWhitelist, optionsSuccessStatus: 200 }));
// app.use(cors({credentials: true, origin: true}));
// app.use(cors());

app.get('/', function (req, res) {
 res.send('hi there');
});

module.exports = app;


./bin/www
#!/usr/bin/env node

const http = require('http');
const dotenv = require('dotenv');

const socket = require('socket.io');
const socketRoutes = require('../routes/socket');

const corsWhitelist = require('../whitelist');

const app = require('../app');

dotenv.config();

const server = http.createServer(app);

const io = socket(server);
io.origins(corsWhitelist);
// io.origins('*');
socketRoutes(io);

server.listen(process.env.PORT, process.env.HOST);
источник

YK

Yehór Kashperskyi in Node.js — русскоговорящее сообщество
А чё за нода?
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
8.10
источник

YK

Yehór Kashperskyi in Node.js — русскоговорящее сообщество
Я рекомендую попробовать с более свежей версией
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
ок, ща попробую, спасибо
источник

YK

Yehór Kashperskyi in Node.js — русскоговорящее сообщество
Просто Пашка
ок, ща попробую, спасибо
Интересно, чё там у тебя
источник

ПП

Просто Пашка in Node.js — русскоговорящее сообщество
ща я еще заодно старые пакеты обновлю, отпишусь получилось что или нет, спасибо
источник

JD

John Doe in Node.js — русскоговорящее сообщество
Просто Пашка
но судя по всему  socket.io на подключение отвечает {"code":4,"message":"Forbidden"}
т. е. запрос на Node.js приложение не поступает, а обрывается Nginx'ом? А что за транспорт используется?
источник