连接客户端服务器时出错[主机查找失败[0]:]

时间:2013-04-09 17:04:09

标签: php

我尝试连接客户端服务器但最终在客户端出现以下错误。

  

主机查找失败[0]:

可能的解决方案是什么?

<?php
$host    = "192.168.1.7";
$port    = 2300;
$message = "Hello Server";
echo "Message To server :".$message;
// create socket
$socket = socket_create(AF_INET, SOCK_STREAM, 0) or die("Could not create socket\n");
// connect to server
$result = socket_connect($socket, $host, $port) or die("Could not connect to     server\n");  
// send string to server
socket_write($socket, $message, strlen($message)) or die("Could not send data to    server\n");
// get server response
$result = socket_read ($socket, 1024) or die("Could not read server response\n");
echo "Reply From Server  :".$result;
// close socket
socket_close($socket);
?>

我想将一个简单的php客户端连接到php服务器..虽然服务器和客户端位于同一网络中的两个不同的系统中..我使用Apache通过xampp ..

这是实际错误

  

警告:socket_connect()[function.socket-connect]:主机查找失败[0]:请求的名称有效,但未找到所请求类型的数据。在第9行的D:\ Program Files \ XAMPP \ htdocs \ php \ client.php中   无法连接到服务器

2 个答案:

答案 0 :(得分:1)

$host    = "1292.168.1.7";

这看起来不像是有效的IP地址。它应该是xxx.xxx.xxx.xxx的形式(xxx是1到255之间的数字)。

  

警告:socket_connect()[function.socket-connect]:无法连接   [0]:无法建立连接,因为目标计算机是主动的   拒绝了

只有在此IP地址和脚本中指定的端口上运行服务器时,您的脚本才能连接到指定的IP地址。检查服务器是否正在运行,是否正在接受连接(是否有防火墙?)以及端口是否正确。

答案 1 :(得分:0)

这是错误的:

$host    = "1292.168.1.7";

我怀疑你的意思

$host    = "192.168.1.7";