为什么我用php读不出这些内容 http://admin.zxtnc.com:8002/我想读取这个页面的内容<?$str = @readfile("http://admin.zxtnc.com:8002/");echo $str;?>竟然读不出来 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我在浏览器里打开那个url,分析了一下,发现它并没有完成HTTP会话,一共9个包,1,2,3是TCP3次握手,4是浏览器发送了GET请求,5就是那个主机回应,但是那个主机回应的时候,没有HTTP头,所以当作纯TCP stream处理了,它发送过来的数据,就只有data,没有header,所以浏览器认为有错误,于是浏览器发送了FIN终止TCP连接,也就是第6个包7是服务器端确认后,8是服务器端发送FIN,9是这边确认,整个TCP完成建立连接用了3个分节,终止连接用了4个分节,承载实际数据的两个分节,没有完成HTTP会话所以readfile会报错,去掉@抑制符号,应该可以看到第5个数据包的内容 $fp = fsockopen('admin.zxtnc.com','8002',$errno,$errstr,1);if(!$fp) echo $errstr;fwrite($fp,"\r\n");while (!feof($fp)) { $content .= fgets($fp, 128);}echo $content;fclose($fp); 约定的接口是怎么样子的?如果是HTTP方式,不是GET就是POST,构造http header,发送过去,并发送contenthttp协议是要遵照一定格式的,不妨搜一下常见的用法,配合浏览器抓包分析 get 过去 /s?a=123&c=123这样怎么写? 服务端开的socket server,既然不是http就需要协商好交互协议,说穿了就是协商好client端怎么请求,server端怎么回复。 如何停止php正在执行的后台代码? js想php传递汉字的问题 关于页面提交后,保持滚动条原位置的问题! PHP 时间显示的问题,在线等.......... *.html和*.php(无数据库操作)速度会相差多少? 我喜欢的PHP为何受到岐视? 请问php上传文件出错 求解! PHP生成嵌套JSON 求一php文件,方便管理网站 求解决800a01c2错误的方法 curl https的问题 php 字符含有另一字符问题,在线等
一共9个包,1,2,3是TCP3次握手,4是浏览器发送了GET请求,5就是那个主机回应,
但是那个主机回应的时候,没有HTTP头,所以当作纯TCP stream处理了,
它发送过来的数据,就只有data,没有header,所以浏览器认为有错误,
于是浏览器发送了FIN终止TCP连接,也就是第6个包
7是服务器端确认后,8是服务器端发送FIN,9是这边确认,整个TCP完成建立连接用了3个分节,终止连接用了4个分节,承载实际数据的两个分节,没有完成HTTP会话
所以readfile会报错,去掉@抑制符号,应该可以看到第5个数据包的内容
$fp = fsockopen('admin.zxtnc.com','8002',$errno,$errstr,1);
if(!$fp) echo $errstr;
fwrite($fp,"\r\n");
while (!feof($fp)) {
$content .= fgets($fp, 128);
}
echo $content;
fclose($fp);
约定的接口是怎么样子的?如果是HTTP方式,不是GET就是POST,构造http header,发送过去,并发送content
http协议是要遵照一定格式的,不妨搜一下常见的用法,配合浏览器抓包分析
/s?a=123&c=123这样怎么写?