2012-01-18 60 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/server.py' # The remote host 

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

的原因是,您將連接到主機本身。在那裏腳本將運行,監聽指定端口上的任何入站連接。你不能連接到一個特定的腳本。

祝你好運!

相關問題