求教fsockopen怎么打开有权限的页面 我想打开一个远程页面获取页面内容但是这个页面设置的有权限,要输入账号和密码我有账号和密码但是不知道怎么打开求教各位大神帮帮忙 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 GET /protected.php HTTP/1.1Host: 127.0.0.1User-Agent: Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: en-us,en;q=0.5Accept-Encoding: gzip, deflateAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7Connection: keep-aliveAuthorization: Basic $PASSWORD把$PASSWORD换成base_encode($username.':'.$password); 把上面的 http请求头用fwrite写到fsock打开的资源句柄就行了。 $getstr = 'adsvrlist?db=imedia_dev'; $domain="10.0.3.129"; $fp = fsockopen($domain, 8081, $errno, $errstr, 30); if(!$fp){ echo "$errstr ($errno)<br>\n"; } else { $tmp = base64_encode("$username:$password"); fputs($fp, "GET $getstr\r\n"); fputs($fp, "HTTP/1.0\r\n"); fputs($fp, "Host: $domain\r\n"); fputs($fp, "Authorization: Basic $tmp\r\n"); fputs($fp, "\r\n"); while(!feof($fp)) { echo fgets($fp, 128); } //fclose ($fp); }我是这样写的还是报401错误 $getstr = 'adsvrlist?db=imedia_dev';要写绝对路径,以/开头的路径 谢谢这样得到的xml是这样的HTTP/1.1 200 OKServer: Adfwebserver 2.0.0(for Magicbrain v2.0)Cache-Control: no-storeContent-Length: 589Content-type: text/xmlConnection: Close<!--?xml version="1.0" encoding="GBK"?--><!--?xml:stylesheet type="text/xsl" href="/tpl/adsvrlist_table.xsl"?--><adf v="1.0.0"><db name="imedia_dev" t="2" svrs="1" adsvrs="1"><ad sid="184"><cfg t="1"><id>872</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg><cfg t="1"><id>873</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg></ad><ad sid="192"><cfg t="0"><id>892</id><svr id="10.0.3.129:3000" v="6.6.609bch"><s>0</s><w>0</w><c>0</c><n>1.00</n><t>1320905706</t></svr><st>0</st><s>0</s><ct>-1</ct><c>0</c><v>1.000000</v></cfg></ad></db></adf><!-- invalid cid/sid param-->这样直接解析xml会报错如果不截取出xml的情况下,还有别的方法能正常处理这段字符串吗谢谢了 <?php$xml = substr($response, strpos($response, "\r\n\r\n") + 4); echo $xml; 有乐意在山东发展的PHP朋友请进 apache 错误日志,帮我看看,为什么APACHE开了以一段时间就自动关闭了 dedecms数据库调用 我想架个博客,大家推荐下~ 乱码问题 谁可以告诉我这一段PHP代码是什么意思吗?在改wordpress主题,在线等! 这样的列表显示是怎么循环的呢 求高手进,问一个symfony的问题。。。。。。。。 怎样把网站页面生成长微博 Zabbix php脚本部分怎么用脚本获取主机信息 Ubuntu php 在线预览 doc/pdf ci做一个简单的分页搜索,并显示搜索结果怎么做啊,
GET /protected.php HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Authorization: Basic $PASSWORD把$PASSWORD换成base_encode($username.':'.$password);
$getstr = 'adsvrlist?db=imedia_dev';
$domain="10.0.3.129";
$fp = fsockopen($domain, 8081, $errno, $errstr, 30);
if(!$fp){
echo "$errstr ($errno)<br>\n";
}
else
{
$tmp = base64_encode("$username:$password");
fputs($fp, "GET $getstr\r\n");
fputs($fp, "HTTP/1.0\r\n");
fputs($fp, "Host: $domain\r\n");
fputs($fp, "Authorization: Basic $tmp\r\n");
fputs($fp, "\r\n");
while(!feof($fp))
{
echo fgets($fp, 128);
}
//fclose ($fp);
}
我是这样写的
还是报401错误
这样得到的xml是这样的HTTP/1.1 200 OK
Server: Adfwebserver 2.0.0(for Magicbrain v2.0)
Cache-Control: no-store
Content-Length: 589
Content-type: text/xml
Connection: Close<!--?xml version="1.0" encoding="GBK"?-->
<!--?xml:stylesheet type="text/xsl" href="/tpl/adsvrlist_table.xsl"?-->
<adf v="1.0.0"><db name="imedia_dev" t="2" svrs="1" adsvrs="1"><ad sid="184"><cfg t="1"><id>872</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg><cfg t="1"><id>873</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg></ad><ad sid="192"><cfg t="0"><id>892</id><svr id="10.0.3.129:3000" v="6.6.609bch"><s>0</s><w>0</w><c>0</c><n>1.00</n><t>1320905706</t></svr><st>0</st><s>0</s><ct>-1</ct><c>0</c><v>1.000000</v></cfg></ad></db></adf><!-- invalid cid/sid param-->这样直接解析xml会报错
如果不截取出xml的情况下,还有别的方法能正常处理这段字符串吗
谢谢了
<?php
$xml = substr($response, strpos($response, "\r\n\r\n") + 4);
echo $xml;