Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

云平台里哪几个文件运用了fsockopen函数

[复制链接]
我是小贼 发表于 2011-12-31 10:50:51 | 显示全部楼层 |阅读模式
云平台里哪几个文件运用了fsockopen函数。。
otherbank 发表于 2011-12-31 12:11:51 | 显示全部楼层
关于万网等虚拟主机无法使用fsockopen操作处理方法,你可以参考一下这个帖子:
https://discuz.dismall.com/thread-1994637-1-1.html

如果要查哪些文件使用了fsockopen,
你可以找个文件搜索工具,查查具体是哪些文件
回复

使用道具 举报

 楼主| 我是小贼 发表于 2012-1-1 11:50:06 | 显示全部楼层
嗯 好的 谢谢 可以解决我的问题
回复

使用道具 举报

 楼主| 我是小贼 发表于 2012-1-1 12:03:23 | 显示全部楼层
我是X2的20111221的  那个文件貌似部相同的


function _dfsockopen($url, $limit = 0, $post = '', $cookie = '', $bysocket = FALSE, $ip = '', $timeout = 15, $block = TRUE) {
$return = '';
$matches = parse_url($url);
$scheme = $matches['scheme'];
$host = $matches['host'];
$path = $matches['path'] ? $matches['path'].($matches['query'] ? '?'.$matches['query'] : '') : '/';
$port = !empty($matches['port']) ? $matches['port'] : 80;
if($post) {
  $out = "POST $path HTTP/1.0\r\n";
  $header = "Accept: */*\r\n";
  $header .= "Accept-Language: zh-cn\r\n";
  $header .= "Content-Type: application/x-www-form-urlencoded\r\n";
  $header .= "User-Agent: $_SERVER[HTTP_USER_AGENT]\r\n";
  $header .= "Host: $host\r\n";
  $header .= 'Content-Length: '.strlen($post)."\r\n";
  $header .= "Connection: Close\r\n";
  $header .= "Cache-Control: no-cache\r\n";
  $header .= "Cookie: $cookie\r\n\r\n";
  $out .= $header.$post;
} else {
  $out = "GET $path HTTP/1.0\r\n";
  $header = "Accept: */*\r\n";
  $header .= "Accept-Language: zh-cn\r\n";
  $header .= "User-Agent: $_SERVER[HTTP_USER_AGENT]\r\n";
  $header .= "Host: $host\r\n";
  $header .= "Connection: Close\r\n";
  $header .= "Cookie: $cookie\r\n\r\n";
  $out .= $header;
}
$fpflag = 0;
if(!$fp = @fsocketopen(($ip ? $ip : $host), $port, $errno, $errstr, $timeout)) {
  $context = array(
   'http' => array(
    'method' => $post ? 'POST' : 'GET',
    'header' => $header,
    'content' => $post,
    'timeout' => $timeout,
   ),
  );
  $context = stream_context_create($context);
  $fp = @fopen($scheme.'://'.($ip ? $ip : $host).':'.$port.$path, 'b', false, $context);
  $fpflag = 1;
}
if(!$fp) {
  return '';
} else {
  stream_set_blocking($fp, $block);
  stream_set_timeout($fp, $timeout);
  @fwrite($fp, $out);
  $status = stream_get_meta_data($fp);
  if(!$status['timed_out']) {
   while (!feof($fp) && !$fpflag) {
    if(($header = @fgets($fp)) && ($header == "\r\n" ||  $header == "\n")) {
     break;
    }
   }
   $stop = false;
   while(!feof($fp) && !$stop) {
    $data = fread($fp, ($limit == 0 || $limit > 8192 ? 8192 : $limit));
    $return .= $data;
    if($limit) {
     $limit -= strlen($data);
     $stop = $limit <= 0;
    }
   }
  }
  @fclose($fp);
  return $return;
}
}
回复

使用道具 举报

vei9 发表于 2012-1-3 14:30:26 | 显示全部楼层
回复

使用道具 举报

jia8y 发表于 2012-1-3 16:09:25 | 显示全部楼层
解决了
回复

使用道具 举报

otherbank 发表于 2012-1-19 15:49:08 | 显示全部楼层
我是小贼 发表于 2012-1-1 12:03
我是X2的20111221的  那个文件貌似部相同的

function _dfsockopen($url, $limit = 0, $post = '', $cook ...

新版本对X2的机制有改变,不依赖fsockopen函数还有pfsockopen函数了,即使这两个函数被禁止,也可以使用云平台和邮件发送等功能了
回复

使用道具 举报

 楼主| 我是小贼 发表于 2012-2-7 18:09:20 | 显示全部楼层
otherbank 发表于 2012-1-19 15:49
新版本对X2的机制有改变,不依赖fsockopen函数还有pfsockopen函数了,即使这两个函数被禁止,也可以使用云 ...

谢啦!
回复

使用道具 举报

zjw860486046 发表于 2012-3-3 07:37:28 | 显示全部楼层
otherbank 发表于 2012-1-19 15:49
新版本对X2的机制有改变,不依赖fsockopen函数还有pfsockopen函数了,即使这两个函数被禁止,也可以使用云 ...

科室现在我空间把fsockopen pfsockopen都禁止了,我没法安装怎么办
他给我的方法是: 服务器同时禁用了fsockopen pfsockopen,那么用其他函数代替,如stream_socket_client()。
怎么办????
回复

使用道具 举报

无名在线 发表于 2012-3-3 20:40:07 | 显示全部楼层
zjw860486046 发表于 2012-3-3 07:37
科室现在我空间把fsockopen pfsockopen都禁止了,我没法安装怎么办
他给我的方法是: 服务器同时禁用了f ...

将网址里的 1改为2 即可跳过!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-25 23:26 , Processed in 0.030073 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表