ポート3002で動作しているUbuntu Serverにnode/express.js/socket.io
アプリをセットアップしました。マシン上のすべてのポートを開いています。Express.jsとsocket.ioを持つNGINX | Can not GET
11.111.111.1:3002/
に行くと、すべてが完全に機能します(どちらもsocket.io & express.js)。私がしようとしている私が言うexpress.jsまたはノードからのエラーメッセージを取得することで動作するように思われる/mediaDev/
にアプリをプロキシパス:
「/ MEDIADEVを得ることができません」ノードのアプリが見つからないと、502 Bad Gatewayが返されます。
しかし、私のIPアドレスとポートでアプリケーションに直接行くと、アプリケーションは期待どおりに完全に動作します。
簡体nginxのサービングコンテンツに関連する
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
location ~ ^/mediaDev {
proxy_pass http://localhost:3002;
}
}
のNode.js:
var app = express()
app.user(bodyParser.urlencoded({ extended:false}))
app.use(bodyParser.json())
app.set('views', path.join(__dirname, 'views'))
app.set('view engine', 'ejs')
app.get('/', function (req, res) {
res.render('index')
})
var server = app.listen(PORT, function() {
console.log("listening on port 3002")
})
var io = require('socket.io')(server, {
path: '/mediaDev/socket.io'
})
注:両方express.jsとsocket.ioが働いているIPアドレスに。実際のドメインエクスプレスでエラーを返しましたが、socket.ioのパス/mediaDev/socket.io
はまだ動作しています。
私は上記が少し奇妙だと思った。私が代理人で/mediaDev
を渡していて、socket.ioのパス/mediaDev/socket.io
を作成しても、実際には/mediaDev/mediaDev/socket.io
になるはずです。
接続全体をポート3002またはプロキシsocket.ioに接続しようとしていますか? – jAndy
接続全体 –