2

PHPクライアントからPythonサーバーにデータを送信しようとしています。

クライアント

<?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 

この方法で接続することは可能ですか?

4

1 に答える 1

3

ほとんどの場合、解決せ127.0.0.1に接続するホストにバインドし127.0.0.1ます。それはうまくいきません。2つのオプションがあります。

  1. 両側で127.0.0.1(または)を使用しますlocalhost
  2. VAC01.VACLab.com両側でホスト名を使用します
于 2012-04-04T09:27:37.313 に答える