2012-01-18 5 views
0

サーバマシン上のパブリックディレクトリにサーバスクリプトをアップロードしました。次に、クライアントからサーバーに接続しようとしましたが、接続されていません。ここに私のコードスニペットです:リモートLinuxホスト上のPython実行ソケットスクリプト

# Echo client program 
import socket 

HOST = 'www.dotpy.ir/server.py' # The remote host 
PORT = 50007    # The same port as used by the server 
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
s.connect((HOST, PORT)) 
s.send('Hello, world') 
data = s.recv(1024) 
s.close() 
print 'Received', repr(data) 

サーバー:

# Echo server program 
import socket 
HOST = ''     # Symbolic name meaning all available interfaces 
PORT = 50007    # Arbitrary non-privileged port 
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
s.bind((HOST, PORT)) 
s.listen(1) 
conn, addr = s.accept() 
print 'Connected by', addr 
while 1: 
    data = conn.recv(1024) 
    if not data: break 
    conn.send(data) 
conn.close() 

答えて

2

これらのスクリプトは、うまく動作するように見えます。

ただし、サーバー上のスクリプトをサーバー上で実行する必要があります。公開ファイルエリアにアップロードするだけでは不十分です。あなたはサーバーにどのようなアクセスをしていますか?スクリプトを実行できますか?

スクリプトを実行することに成功した場合は、からクライアントスクリプトを変更する必要があります。その理由は、あなたがホスト自体に接続することである

HOST = 'www.dotpy.ir' # The remote host 

HOST = 'www.dotpy.ir/server.py' # The remote host 

。スクリプトが実行され、指定されたポート上の着信接続をリッスンします。特定のスクリプトにはアクセスできません。

幸運を祈る!

関連する問題