2012-04-04 204 views
2

我想将数据从PHP客户端发送到Python服务器。使用PHP和Python的客户端服务器应用程序

CLIENT

<?php 

$host = "127.0.0.1"; 
$port = 2000; 

$output="datatatatatatta" ; 

$socket1 = socket_create(AF_INET, SOCK_STREAM,0) or die("Could not create socket\n"); 

socket_connect ($socket1 , $host,$port) ; 

socket_write($socket1, $output, strlen ($output)) or die("Could not write output\n"); 

socket_close($socket1) ; 


?> 

服务器

import socket 
import sys 
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) 

host= 'VAC01.VACLab.com' 
port=int(2000) 
s.bind((host,port)) 
s.listen(1) 

conn,addr =s.accept() 

print (conn,addr) 

data=conn.recv(100000) 
data=data.decode("utf-8") 

s.close 


FILE = open("c:/vinod/vin.txt","w") 
FILE.write(str(data)) 
FILE.close() 

在客户端,我得到了下面的错误。

Warning: socket_connect() [function.socket-connect]: unable to connect [0]: No connection could be made because the target machine actively refused it. in C:\xampp\htdocs\xampp\socket.php on line 10 

Warning: socket_write() [function.socket-write]: unable to write to socket [0]: A request to send or receive data was disallowed because the socket is not connected and (when sending on a datagram socket using a sendto call) no address was supplied. in C:\xampp\htdocs\xampp\socket.php on line 12 
Could not write output 

这样可以连接吗?

回答

3

您绑定到最有可能的主机不是解析为127.0.0.1但连接到127.0.0.1。这是行不通的。你有两个选择:

  1. 使用127.0.0.1(或localhost)两侧
  2. 使用主机名VAC01.VACLab.com两侧
相关问题