@VegasChickiChicki

Как правильно настроить socket.io и vps сервер для корректной работы?

Суть в том, что я пытаюсь разобраться в работе сокетов.
Есть nuxt приложение, сокеты в нем подключены примерно так:
//nuxt.config.js
modules: [
    'nuxt-socket-io',
  ],

  io: {
    sockets: [{
      name: 'main',
      url: 'http://localhost:8080',
      default: true,
    }]
  },


На стороне сервера:
const app = require('express')();
const http = require('http').createServer(app);
const cors = require('cors');
const io = require('socket.io')(http);

app.use(cors());

io.on('connection', socket => {
  console.log('a user connected');

  socket.on('NewMessage', msg => {
    io.emit('update-chat', msg);
  });
});

app.get('/', (req, res) => res.send('api-server is ready to work!'));

http.listen(8080, () => console.log('Example app listening on port 8080'));


Не могу понять в чем дело. Проблема в том, что конкретно у меня все работает. Я открываю вкладку с приложением, пишу что либо в чат и все прилетает и отображается во второй, а вот у других людей - нет. Выкидывает ошибку с текстом:
GET localhost:8080/socket.io...
net::ERR_CONNECTION_REFUSED

5f8d843ebba4d205611983.png

Я предполагаю, что я во время работы выдал права на сервере для своего ip, может в этом проблема?
Куда копать, может такое быть из-за того что нет ssl о_О? Может как то нужно настроить nginx или ubuntu? Только начал в этом разбираться не смог найти ответа пока...
  • Вопрос задан
  • 85 просмотров
Решения вопроса 1
@VegasChickiChicki Автор вопроса
Решил проблему. Суть в том, что во время работы у меня был включен локальный сервер, не знаю в этом дело или нет, но у меня есть подозрение, то что запросы с сайта у меня шли именно туда, у остальных пользователей, соответственно, ничего не работало, так как у них локально ничего и не было запущено :)

Изменил настройку nuxt конфига следующим образом:
io: {
    // module options
    sockets: [{
      name: 'main',
      url: process.env.NODE_ENV !== 'production'? 'http://localhost:8080' : 'http://194.194.194.194:8080',
      default: true,
    }]
  }
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Проксируйте 8080 порт и нет проблем
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы