本文实例讲述了php禁用函数设置及查看方法。分享给大家供大家参考,具体如下:
打开PHP.INI,找到这行:
disable_functions =
在后面那里加上要禁用的函数,如禁用多个函数,要用半角逗号 , 分开
给个例子:
disable_functions = passthru,exec,system,popen,chroot,scandir,chgrp,chown,escapesh
ellcmd,escapeshellarg,shell_exec,proc_open,proc_get_status
建议在主机上禁用的函数:
disable_functions = system,exec,shell_exec,passthru,proc_open,proc_close, proc_get_status,checkdnsrr,getmxrr,getservbyname,getservbyport, syslog,popen,show_source,highlight_file,dl,socket_listen,socket_create,socket_bind,socket_accept, socket_connect, stream_socket_server, stream_socket_accept,stream_socket_client,ftp_connect, ftp_login,ftp_pasv,ftp_get,sys_getloadavg,disk_total_space, disk_free_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
在主机上面如何查看禁用的函数列表,我从网上找了一个非常不错的探针
header("content-Type: text/html; charset=utf-8");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
error_reporting(0);
ob_end_flush();
?>
/p>
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
//加了这句,看看能不能解决linux下显示乱码的问题?
PHP 探针 v1.0if (function_exists("phpinfo")){
echo'[phpinfo]';}
echo'
php探针v1.0 by MKDuse(blueidea-id)
此程序代码,可免费使用;但不得用于商业用途;完全转载或使用此代码,请保留版权信息;
欢迎指正错误提建议,QQ:122712355
if (empty($_GET['typ'])){
baseinfo();}
else{
switch ($_GET['typ']){
case 'phpinfo':
phpinfoview();
break;
case 'superinfo':
superinfo();
break;
case 'baseinfo':
baseinfo();
break;
default:
baseinfo();}
}
function getime()
{
$t = gettimeofday();
return (float)($t['sec'] + $t['usec']/1000000);
}
function baseinfo(){
echo '
基本信息
';$arr[]=array("Current PHP version:",phpversion());
$arr[]=array("Zend engine version:",zend_version());
$arr[]=array("服务器版本",$_SERVER['SERVER_SOFTWARE']);
$arr[]=array("ip地址",$_SERVER['REMOTE_HOST']);//ip
$arr[]=array("域名",$_SERVER['HTTP_HOST']);
$arr[]=array("协议端口",$_SERVER['SERVER_PROTOCOL'].' '.$_SERVER['SERVER_PORT']);
$arr[]=array("站点根目录",$_SERVER['PATH_TRANSLATED']);
$arr[]=array("服务器时间",date('Y年m月d日,H:i:s,D'));
$arr[]=array("当前用户",get_current_user());
$arr[]=array("操作系统",php_uname('s').php_uname('r').php_uname('v'));
$arr[]=array("include_path",ini_get('include_path'));
$arr[]=array("Server API",php_sapi_name());
$arr[]=array("error_reporting level",ini_get("display_errors"));
$arr[]=array("POST提交限制",ini_get('post_max_size'));
$arr[]=array("upload_max_filesize",ini_get('upload_max_filesize'));
$arr[]=array("脚本超时时间",ini_get('max_execution_time').'秒');
if (ini_get("safe_mode")==0){
$arr[]=array("PHP安全模式(Safe_mode)",'off');}
else{
$arr[]=array("PHP安全模式(Safe_mode)",'on');}
if (function_exists('memory_get_usage')){
$arr[]=array("memory_get_usage",ini_get('memory_get_usage'));}
//$arr[]=array("可用空间",intval(diskfreespace('/')/(1024 * 1024))."M");
echo'
for($i=0;$i
{
$overview='
'.$arr[$i][0].''.$arr[$i][1].'';echo $overview;
}
echo'
';echo '
服务器性能测试
';echo'
服务器 | 整数运算 50万次加法(1+1) | 浮点运算 50万次平方根(3.14开方) |
echo'
MKDuse的机子(P4 1.5G 256DDR winxp sp2)465.08ms466.66ms';$time_start=getime();
for($i=0;$i<=500000;$i++);
{$count=1+1;}
$timea=round((getime()-$time_start)*1000,2);
echo '
当前服务器'.$timea.'ms';$time_start=getime();
for($i=0;$i<=500000;$i++);
{sqrt(3.14);}
$timea=round((getime()-$time_start)*1000,2);
echo '
'.$timea.'ms';?>
function gettime()
{
var time;
time=new Date();
return time.getTime();
}
start_time=gettime();
echo '
带宽测试
';for ($i=0;$i<100;$i++){
print "";}
?>
var timea;
var netspeed;
timea=gettime()-start_time;
netspeed=Math.round(10/timea*1000);
document.getElementByIdx("dk").innerHTML="向客户端发送10KB数据,耗时"+timea+"ms
您与此服务器的连接速度为"+netspeed+"kb/s";
echo'
已加载的扩展库(enable)
$arr =get_loaded_extensions();
foreach($arr as $value){
echo $value.'
';}
echo'
禁用的函数
';
$disfun=ini_get('disable_functions');
if (empty($disfun)){
echo'没有禁用
';}else{
echo ini_get('disable_functions').'
';}}//关闭
function superinfo(){
echo'
高级信息
PHP_INI_USER 1 配置选项可用在用户的 PHP 脚本或Windows 注册表中
PHP_INI_PERDIR 2 配置选项可在 php.ini, .htaccess 或 httpd.conf 中设置
PHP_INI_SYSTEM 4 配置选项可在 php.ini or httpd.conf 中设置
PHP_INI_ALL 7 配置选项可在各处设置
$arr1=ini_get_all();
for ($i=0;$i
{
$arr2=array_slice($arr1,$i,1);
print_r($arr2);
echo '
';
}
}
function phpinfoview(){
phpinfo();
}
?>
希望本文所述对大家PHP程序设计有所帮助。