3
嗯,我希望這個問題不是愚蠢的或重複的。我保證我已經研究和測試了很多。無法連接到我的VPS上的node.js服務器
我有一個服務器我的VPS使用此代碼:
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
server.listen(8080);
io.on('connection', function(socket) {
socket.on('hello', function() {
console.log('Hello received');
}
}
而一個客戶在另一臺機器:
<script>
var socket = io.connect('http://[VPS Public IP]:8080');
io.emit('hello');
</script>
使用私有IP地址,並在這工作同一網。當使用公共IP時,這不起作用。任何想法爲什麼會發生這種情況?
謝謝。
VPS上是否有防火牆阻止端口?節點是否綁定到0.0.0.0? – dodecaphonic
這是一個運行Ubuntu 16.04的VPS。我試圖禁用ufw(Ubuntu的默認防火牆),但我的VPS沒有安裝它,所以我想沒有防火牆。我對嗎? 我用server.listen(8080,「0.0.0.0」)代替了server.listen(8080),沒有任何變化。 –
通過命令「telnet VPS_Public_IP 8080」驗證連通性 – Harikrishnan