2

cloudways に管理対象サーバーがあります。socket.io を使用しようとしています。

client.php:

var socket = io('http://localhost:3000');
console.log(socket);

サーバー.js:

var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);

server.listen(3000);

io.on('connection', function(socket){
console.log('is connected');
});

このページにアクセスすると、コンソールのネットワーク セクションに 200 OK のインスタンスが 2 つ表示されます。ブラウザのコンソールにも、「connected : true」を持つソケット変数が出力されます。

ただし、ターミナルで(server.jsから)「接続されています」とは表示されません。空白です。

このサイトはローカルで動作しましたが、Cloudways で動作させようとするとこれらの問題が発生します。

何か案は?

「localhost」をドメイン名とIPアドレスの両方に切り替えようとしましたが、別のポートを試しましたが、server.jsをエラーなしで起動できるのは3000だけです。

ここに画像の説明を入力

編集

Cloudways は、ポート 3000 を使用する必要があることを確認しています。

io() の URL を次のように変更しようとしました。

var socket = io('http://my-cloudways-url:3000'); (net::ERR_EMPTY_RESPONSE)
var socket = io('http://www.my-domain.club:3000'); (net::ERR_EMPTY_RESPONSE)
var socket = io('http://ip-adr:3000'); (net::ERR_EMPTY_RESPONSE)

そして今日、私は得ています

var socket = io('http://localhost:3000'); (net::ERR_CONNECTION_REFUSED)

io.connect(同じアドレス/ポートを使用)も試しました。

4

1 に答える 1