Я реализую простую игру в Node.js.У меня есть client.js
для моего клиентского кода и server.js
на удаленном сервере, которые используют сокеты для связи через порт 3000
Я также использую Apache на порт 80 и использование ProxyPass
в моем файле конфигурации Apache для маршрутизации URL mywebsite.io/agario
на мой сервер nodejs.
<Location /agario>
ProxyPass http://localhost:3000/
ProxyPassReverse http://localhost:3000/
</Location>
Я также использую cloudflare для маршрутизации моего веб-сервера 167.179.xx.xx через URL https://agario.mywebsite.io
для SSL, чтобы я мог использовать HTTPS.
Проблема
Когда я пытаюсьподключиться к моему сайту https://agario.mywebsite.io/agario Я получаю следующую ошибку:
socket.io-1.4.5.js:1 GET https://localhost:3000/socket.io/?EIO=3&transport=polling&t=MakAMgZ net::ERR_CONNECTION_REFUSED
Мне неясно, почему мой клиентский код пытается подключиться к localhost, когда я указалв коде для подключения к удаленному серверу.Потенциально я просто запутался в том, как запустить сервер node.js, так как это мой первый вкус Node.js и сокетов.
client.js
...
var socket;
socket = io.connect('https://agario.mywebsite.io/agario');
...
server.js
var app = express();
var server = app.listen(3000, listen);
// This call back just tells us that the server has started
function listen() {
var host = server.address().address;
var port = server.address().port;
console.log('Example app listening at http://' + host + ':' + port);
}
app.use(express.static('public'));
var io = require('socket.io')(server);
io.sockets.on('connection',
function(socket) {
console.log("We have a new client: " + socket.id);
...
});
Если я пропустил важную информацию, пожалуйста, дайте мне знать, и я обновлю свой вопрос, спасибо.