神秘的dbboon文件夹,在我的godaddy帐户上有proxy.php文件
今天在做一些web维护时,我注意到我的GoDaddy主机帐户上有一个奇怪的新文件夹,名为“dbboon”,其中只有一个文件,名为proxy.php。下面列出了它的代码,似乎是某种代理函数 我有点麻烦,因为我没有把它放在那里。我用谷歌搜索了这一切以了解更多信息,但除了代理文件碰巧也存储在pastebin.com之外,什么也没找到: 我打电话给GoDaddy,他们确认它属于他们,说它是由他们的高级托管组放在那里进行测试的,但没有更多的信息。 我觉得这真的很奇怪:为什么他们不给我一个提示就把东西放在我的文件夹里,为什么他们需要这样做 有人知道这件事吗神秘的dbboon文件夹,在我的godaddy帐户上有proxy.php文件,php,Php,今天在做一些web维护时,我注意到我的GoDaddy主机帐户上有一个奇怪的新文件夹,名为“dbboon”,其中只有一个文件,名为proxy.php。下面列出了它的代码,似乎是某种代理函数 我有点麻烦,因为我没有把它放在那里。我用谷歌搜索了这一切以了解更多信息,但除了代理文件碰巧也存储在pastebin.com之外,什么也没找到: 我打电话给GoDaddy,他们确认它属于他们,说它是由他们的高级托管组放在那里进行测试的,但没有更多的信息。 我觉得这真的很奇怪:为什么他们不给我一个提示就把东西放在我
<?php
$version = '1.2';
if(isset($_GET['dbboon_version'])) {
echo '{"version":"' . $version . '"}';
exit;
}
function dbboon_parseHeaders($subject) {
global $version;
$subject = trim($subject);
$parsed = Array();
$len = strlen($subject);
$position = $field = 0;
$position = strpos($subject, "\r\n") + 2;
while(isset($subject[$position])) {
$nextC = strpos($subject, ':', $position);
$fieldName = substr($subject, $position, ($nextC-$position));
$position += strlen($fieldName) + 1;
$fieldValue = NULL;
while(1) {
$nextCrlf = strpos($subject, "\r\n", $position - 1);
if(FALSE === $nextCrlf) {
$t = substr($subject, $position);
$position = $len;
} else {
$t = substr($subject, $position, $nextCrlf-$position);
$position += strlen($t) + 2;
}
$fieldValue .= $t;
if(!isset($subject[$position]) || (' ' != $subject[$position] && "\t" != $subject[$position])) {
break;
}
}
$parsed[strtolower($fieldName)] = trim($fieldValue);
if($position > $len) {
echo '{"result":false,"error":{"code":4,"message":"Communication error, unable to contact proxy service.","version":"' . $version . '"}}';
exit;
}
}
return $parsed;
}
if(!function_exists('http_build_query')) {
function http_build_query($data, $prefix = '', $sep = '', $key = '') {
$ret = Array();
foreach((array) $data as $k => $v) {
if(is_int($k) && NULL != $prefix) {
$k = urlencode($prefix . $k);
}
if(!empty($key) || $key === 0) {
$k = $key . '[' . urlencode($k) . ']';
}
if(is_array($v) || is_object($v)) {
array_push($ret, http_build_query($v, '', $sep, $k));
} else {
array_push($ret, $k . '=' . urlencode($v));
}
}
if(empty($sep)) {
$sep = '&';
}
return implode($sep, $ret);
}
}
$host = 'dbexternalsubscriber.secureserver.net';
$get = http_build_query($_GET);
$post = http_build_query($_POST);
$url = $get ? "?$get" : '';
$fp = fsockopen($host, 80, $errno, $errstr);
if($fp) {
$payload = "POST /embed/$url HTTP/1.1\r\n";
$payload .= "Host: $host\r\n";
$payload .= "Content-Length: " . strlen($post) . "\r\n";
$payload .= "Content-Type: application/x-www-form-urlencoded\r\n";
$payload .= "Connection: Close\r\n\r\n";
$payload .= $post;
fwrite($fp, $payload);
$httpCode = NULL;
$response = NULL;
$timeout = time() + 15;
do {
while($line = fgets($fp)) {
$response .= $line;
if(!trim($line)) {
break;
}
}
} while($timeout > time() && NULL === $response);
$headers = dbboon_parseHeaders($response);
if(isset($headers['transfer-encoding']) && 'chunked' === $headers['transfer-encoding']) {
do {
$cSize = $read = hexdec(trim(fgets($fp)));
while($read > 0) {
$buff = fread($fp, $read);
$read -= strlen($buff);
$response .= $buff;
}
$response .= fgets($fp);
} while($cSize > 0);
} else {
preg_match('/Content-Length:\s([0-9]+)\r\n/msi', $response, $match);
if(!isset($match[1])) {
echo '{"result":false,"error":{"code":3,"message":"Communication error, unable to contact proxy service.","version":"' . $version . '"}}';
exit;
} else {
while($match[1] > 0) {
$buff = fread($fp, $match[1]);
$match[1] -= strlen($buff);
$response .= $buff;
}
}
}
fclose($fp);
if(!$pos = strpos($response, "\r\n\r\n")) {
echo '{"result":false,"error":{"code":2,"message":"Communication error, unable to contact proxy service.","version":"' . $version . '"}}';
exit;
}
echo substr($response, $pos + 4);
} else {
echo '{"result":false,"error":{"code":1,"message":"Communication error, unable to contact proxy service.","version":"' . $version . '"}}';
exit;
}
代码似乎测试了到dbexternalsubscriber.secureserver.net的连接,并以某种JSON输出返回结果。它可以用作某种类型的连接测试仪。关于GoDaddy主机,我听到的不多,但撇开声誉不谈,如果可以的话,我会删除它。此外,请检查.htaccess文件中是否有可能反映此代码的任何更改 谢谢你的建议。幸运的是,我能够毫无问题地删除文件夹。这个问题应该被锁定,大多数答案都是“我也是”的评论,而不是答案。试着在标题上问这个问题。我投票结束这个问题,因为它询问的是第三方服务策略