×'; break; case 1: return '√'; break; default: return $result; break; }}if ($_GET['act'] == "phpinfo") { phpinfo(); exit();} elseif($_GET['act'] == "Function"){ $arr = get_defined_functions(); Function php() { } echo ""; Echo "这里显示系统所支持的所有函数,和自定义函数\n"; print_r($arr); echo "
"; exit();}elseif($_GET['act'] == "disable_functions"){ $disFuns=get_cfg_var("disable_functions"); if(empty($disFuns)) { $arr = '×'; } else { $arr = $disFuns; } Function php() { } echo ""; Echo "这里显示系统被禁用的函数\n"; print_r($arr); echo "
"; exit();}//MySQL检测if ($_POST['act'] == 'MySQL检测'){ $host = isset($_POST['host']) ? trim($_POST['host']) : ''; $port = isset($_POST['port']) ? (int) $_POST['port'] : ''; $login = isset($_POST['login']) ? trim($_POST['login']) : ''; $password = isset($_POST['password']) ? trim($_POST['password']) : ''; $host = preg_match('~[^a-z0-9\-\.]+~i', $host) ? '' : $host; $port = intval($port) ? intval($port) : ''; $login = preg_match('~[^a-z0-9\_\-]+~i', $login) ? '' : htmlspecialchars($login); $password = is_string($password) ? htmlspecialchars($password) : '';}elseif ($_POST['act'] == '函数检测'){ $funRe = "函数".$_POST['funName']."支持状况检测结果:".isfun1($_POST['funName']);} elseif ($_POST['act'] == '邮件检测'){ $mailRe = "邮件发送检测结果:发送"; if($_SERVER['SERVER_PORT']==80){ $mailContent = "http://".$_SERVER['SERVER_NAME'].($_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME']);} else{ $mailContent = "http://".$_SERVER['SERVER_NAME'].":".$_SERVER['SERVER_PORT'].($_SERVER['PHP_SELF'] ? $_SERVER['PHP_SELF'] : $_SERVER['SCRIPT_NAME']);} $mailRe .= (false !== @mail($_POST["mailAdd"], $mailContent, "This is a test mail!\n\nhttp://lnmp.org")) ? "完成":"失败";} // 检测函数支持function isfun($funName = ''){ if (!$funName || trim($funName) == '' || preg_match('~[^a-z0-9\_]+~i', $funName, $tmp)) return '错误'; return (false !== function_exists($funName)) ? '√' : '×';}function isfun1($funName = ''){ if (!$funName || trim($funName) == '' || preg_match('~[^a-z0-9\_]+~i', $funName, $tmp)) return '错误'; return (false !== function_exists($funName)) ? '√' : '×';}?>phpStudy 探针 2014 服务器参数 |
服务器域名/IP地址 | ( ) |
服务器标识 | |
服务器操作系统 | 内核版本: | 服务器解译引擎 | |
服务器语言 | | 服务器端口 | |
服务器主机名 | | 绝对路径 | |
管理员邮箱 | | 探针路径 | |
PHP已编译模块检测 |
$value) { if ($key!=0 && $key%13==0) { echo ''; } echo "$value ";}?> |
PHP相关参数 |
PHP信息(phpinfo): | ×' :"PHPINFO";?> | PHP版本(php_version): | |
PHP运行方式: | | 脚本占用最大内存(memory_limit): | |
PHP安全模式(safe_mode): | | POST方法提交最大限制(post_max_size): | |
上传文件最大限制(upload_max_filesize): | | 浮点型数据显示的有效位数(precision): | |
脚本超时时间(max_execution_time): | 秒 | socket超时时间(default_socket_timeout): | 秒 |
PHP页面根目录(doc_root): | | 用户根目录(user_dir): | |
dl()函数(enable_dl): | | 指定包含文件目录(include_path): | |
显示错误信息(display_errors): | | 自定义全局变量(register_globals): | |
数据反斜杠转义(magic_quotes_gpc): | | "<?...?>"短标签(short_open_tag): | |
"<% %>"ASP风格标记(asp_tags): | | 忽略重复错误信息(ignore_repeated_errors): | |
忽略重复的错误源(ignore_repeated_source): | | 报告内存泄漏(report_memleaks): | |
自动字符串转义(magic_quotes_gpc): | | 外部字符串自动转义(magic_quotes_runtime): | |
打开远程文件(allow_url_fopen): | | 声明argv和argc变量(register_argc_argv): | |
Cookie 支持: | √' : '×';?> | 拼写检查(ASpell Library): | |
高精度数学运算(BCMath): | | PREL相容语法(PCRE): | |
PDF文档支持: | | SNMP网络管理协议: | |
VMailMgr邮件处理: | | Curl支持: | |
SMTP支持: | √' : '×';?> | SMTP地址: | ×';?> |
默认支持函数(enable_functions): | 请点这里查看详细! |
被禁用的函数(disable_functions): | ×';}else{ //echo $disFuns; $disFuns_array = explode(',',$disFuns); foreach ($disFuns_array as $key=>$value) { if ($key!=0 && $key%5==0) { echo ''; } echo "$value ";} }?> |
组件支持 |
FTP支持: | | XML解析支持: | |
Session支持: | | Socket支持: | |
Calendar支持 | | 允许URL打开文件: | |
GD库支持: | ×';} ?> | 压缩文件支持(Zlib): | |
IMAP电子邮件系统函数库: | | 历法运算函数库: | |
正则表达式函数库: | | WDDX支持: | |
Iconv编码转换: | | mbstring: | |
高精度数学运算: | | LDAP目录协议: | |
MCrypt加密处理: | | 哈稀计算: | |
第三方组件 |
Zend版本 | ×';}else{ echo $zend_version;}?> | 2){ echo "ZendGuardLoader[启用]";}else{ echo "Zend Optimizer";}?> | 2){ echo (get_cfg_var("zend_loader.enable"))?'√':'×';} else{ if(function_exists('zend_optimizer_version')){ echo zend_optimizer_version();}else{ echo (get_cfg_var("zend_optimizer.optimization_level")||get_cfg_var("zend_extension_manager.optimizer_ts")||get_cfg_var("zend.ze1_compatibility_mode")||get_cfg_var("zend_extension_ts"))?'√':'×';}}?> |
eAccelerator | ×";} ?> | ioncube | ×";}?> |
XCache | ×";} ?> | APC | ×";} ?> |
数据库支持 |
MySQL 数据库: | | ODBC 数据库: | |
Oracle 数据库: | | SQL Server 数据库: | |
dBASE 数据库: | | mSQL 数据库: | |
SQLite 数据库: | √ ';echo "SQLite3 Ver ";echo $sqliteVer[versionString];}else { echo isfun("sqlite_close");if(isfun("sqlite_close") == '√') { echo " 版本: ".@sqlite_libversion();}}?> | Hyperwave 数据库: | |
Postgre SQL 数据库: | | Informix 数据库: | |
DBA 数据库: | | DBM 数据库: | |
FilePro 数据库: | | SyBase 数据库: | |
'100 Continue', 101 => '101 Switching Protocols', // Successful 200 => '200 OK', 201 => '201 Created', 202 => '202 Accepted', 203 => '203 Non-Authoritative Information', 204 => '204 No Content', 205 => '205 Reset Content', 206 => '206 Partial Content', // Redirection 300 => '300 Multiple Choices', 301 => '301 Moved Permanently', 302 => '302 Found', 303 => '303 See Other', 304 => '304 Not Modified', 305 => '305 Use Proxy', 306 => '306 (Unused)', 307 => '307 Temporary Redirect', // Client Error 400 => '400 Bad Request', 401 => '401 Unauthorized', 402 => '402 Payment Required', 403 => '403 Forbidden', 404 => '404 Not Found', 405 => '405 Method Not Allowed', 406 => '406 Not Acceptable', 407 => '407 Proxy Authentication Required', 408 => '408 Request Timeout', 409 => '409 Conflict', 410 => '410 Gone', 411 => '411 Length Required', 412 => '412 Precondition Failed', 413 => '413 Request Entity Too Large', 414 => '414 Request-URI Too Long', 415 => '415 Unsupported Media Type', 416 => '416 Requested Range Not Satisfiable', 417 => '417 Expectation Failed', // Server Error 500 => '500 Internal Server Error', 501 => '501 Not Implemented', 502 => '502 Bad Gateway', 503 => '503 Service Unavailable', 504 => '504 Gateway Timeout', 505 => '505 HTTP Version Not Supported' ); if(! @$httpResp = (int)rawurldecode($_GET['resp'])) $httpResp = 200; if($httpResp >= 100 && $httpResp < 600) { $httpHeader = 'HTTP/1.1 ' . $httpResponseMessage[$httpResp]; header($httpHeader); } return $httpHeader;}function doSleep() { if(! @$sleep = (int)rawurldecode($_GET['sleep'])) $sleep = 0; if($sleep > 0) { $slept['start time'] = date('h:i:s'); sleep($sleep); $slept['end time'] = date('h:i:s'); } if(!empty($slept)) return $slept;}function doPad() { if(! @$pad = (int)rawurldecode($_GET['pad'])) $pad = 0; if($pad > 8) { $realPad = $pad - 4; $padding = str_pad(" "; $padded['padded'] = $pad . " bytes" . $padding; } if(!empty($padded)) return $padded;}function setHttpLocation() { if(! @$locationHeader = rawurldecode($_GET['loc'])) $locationHeader = ""; if(! $locationHeader == "") { header("Location: " . $locationHeader); }}function getHttpParams() { $param = array(); foreach ($_SERVER as $name => $value) { if (substr($name, 0, 5) == 'HTTP_') { $param[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 5)))))] = $value; } } return $param;}function getRequestParams() { $param = array(); foreach ($_SERVER as $name => $value) { if (substr($name, 0, 8) == 'REQUEST_') { $param[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 8)))))] = $value; } } return $param;}function getDocumentParams() { $param = array(); foreach ($_SERVER as $name => $value) { if (substr($name, 0, 9) == 'DOCUMENT_') { $param[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 9)))))] = $value; } } return $param;}function getServerParams() { $param = array(); foreach ($_SERVER as $name => $value) { if (substr($name, 0, 7) == 'SERVER_') { $param[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 7)))))] = $value; } } return $param;}function getRemoteParams() { $param = array(); foreach ($_SERVER as $name => $value) { if (substr($name, 0, 7) == 'REMOTE_') { $param[str_replace(' ', '-', ucwords(strtolower(str_replace('_', ' ', substr($name, 7)))))] = $value; } } return $param;}function buildTable($params) { $table = ""; if (!empty($params)) { $table = "
\n\t \n"; foreach ($params as $Header => $Value) { $table .= "\t\t \n"; $table .= "\t\t\t $Header | "; $table .= " $Value | \n"; $table .= "\t\t
\n"; } $table .= "\t \n
\n"; } return $table;}function buildFilesTable($params) { $table = ""; if (!empty($params)) { $table = "
\n\t \n"; foreach ($params as $File => $Value) { $table .= "\t\t \n"; $table .= "\t\t\t $File | "; $table .= " $Value[name] | "; $table .= " $Value[type] | "; $table .= " $Value[size] bytes | \n"; $table .= "\t\t
\n"; } $table .= "\t \n
\n"; } return $table;}function getColor() { switch (substr($_SERVER['SERVER_ADDR'], -1)) { case 0: $pageColor = "Black"; break; case 1: $pageColor = "Blue"; break; case 2: $pageColor = "Red"; break; case 3: $pageColor = "Green"; break; case 4: $pageColor = "Maroon"; break; case 5: $pageColor = "Navy"; break; case 6: $pageColor = "Olive"; break; case 7: $pageColor = "Purple"; break; case 8: $pageColor = "Gray"; break; case 9: $pageColor = "Teal"; break; default: $pageColor = "Black"; } return $pageColor;}function setHttpCookie() { if (!empty($_POST["NewCookie"])) setcookie("CookieTest" . time(), $_POST["NewCookie"], time()+300, "/");}$slept = doSleep();$pad = doPad();$httpHeader = setHttpResponse();setHttpLocation();setHttpCookie();$serverName = php_uname("n");$pageColor = getColor();$pageTitle = strtolower("$serverName $pageColor");?>
<?php echo $pageTitle; ?> slept\n"; echo buildTable($slept);} ?>
pad\n"; echo buildTable($pad);} ?>
request
http (headers)
cookies\n"; echo buildTable($_COOKIE);} ?>
post\n"; echo buildTable($_POST); echo buildFilesTable($_FILES);} ?>
document
remote
server
links
create cookie
add a cookie |
|
(this cookie will expire 5 minutes after creation) |
create post
options
?sleep=X | sleep X seconds during response |
?pad=X | pad response with X bytes (must be > 8) |
?resp=X | set response code to X |
?loc=X | set location header to X |