2017-02-25 8 views
1

私はゲームのためにサーバーを動かすためのVPSを持っています。私はnode.jssocket.ioを使います。私はsocket.ioでmydomain.comからサーバーに接続するとき、Node.jsを実行するサーバーのセットアップ方法?

[Service] 
ExecStart=/usr/bin/node /usr/games/nodeapp/app.js 
Restart=always 
StandardOutput=syslog 
StandardError=syslog 
SyslogIdentifier=my-app-name 
User=hnp 
Group=hnp 
Environment=NODE_ENV=production PORT=5000 

[Install] 
WantedBy=multi-user.target 

:しかし、私はこのように私のmy-app-name.serviceファイルをconfigのいくつかのチュートリアルを見つけた

io('http://<my_server_ip>:5000') 

Iましたエラー:

GET http://<my_server_ip>/socket.io/?EIO=3&transport=polling&t=LfqMeQU net::ERR_CONNECTION_TIMED_OUT 

私の

var http = require('http'); 
var socketIO = require('socket.io'); 
var port = process.env.PORT || 5000; 
var ip = process.env.IP || 'localhost'; 
server = http.createServer().listen(port, ip, function() { 
    console.log('Server running at %s:%s!', ip, port); 
}); 
var io = socketIO.listen(server); 
io.set('match origin protocol', true); 
io.set('origins', '*:*'); 

答えて

0

これはこれまでのやり方です。でも、私はExpress.js使用:

var express = require("express"); 
var app = express(); 
app.use(express.static(__dirname + "/")); 
var http = require("http"); 
var server = http.createServer(app); 

io = require("socket.io")(server); 
server.listen(process.env.PORT || 80, "YOUR_IP"); 

クライアント:別のドメインとの差分サーバーで

var socket = io(); 
+0

クライアント。私のVPSはNode.jsアプリを実行するだけで、私のウェブサイトはそれに接続します。 –

+0

@OmegaPポートを「80」に変更できますか?私はポート '5000'で同じ問題をシミュレートできますが、私が '80'に変更すると動作します。 –

+0

@OmegaP私はHerokuサービスを使用したプロジェクトを持っています。また、ポート5000を使用しています。サーバ上には 'server.listen(process.env.PORT || 5000);'があり、クライアントには 'socket = io();'があります。私はそこにIPを指定しません。あなたは同じことを試みることができますか? –

関連する問題