php

位置:IT落伍者 >> php >> 浏览文章

PHP监控linux服务器负载


发布日期:2023年03月02日
 
PHP监控linux服务器负载

由于Web Server以及PHP的实现方式所限我们在现实环境中很难利用PHP去调用一些Linux中需要root权限才能执行的程序对此我从网上找到另外一种方式来绕开这个限制首先先写个c程序中转调用系统命令然后用PHP去执行此c程序

c程序

首先写个c文件比如/usr/local/ismole/wc

//note 由于wordpress编辑器的原因请将此代码中头文件多余的空格去除

#include < stdioh>

#include < stdlibh>

#include < systypesh>

#include < unistdh>

int main()

{

uid_t uid euid;

//note 获得当前的uid

uid = getuid();

//note 获得当前euid

euid = geteuid();

//note 交换这两个id

if(setreuid(euid uid))

perror(setreuid);

//note 执行将要执行linux系统命令

system(/usr/bin/w);

return ;

}

//note 由于wordpress编辑器的原因请将此代码中头文件多余的空格去除

编译该文件gcc o ipt Wall wc这时会在当前目录下生成程序w

改变此程序的属主chmod u+s /w

PHP执行

文件内容如下放在web目录下访问就会输出当前的服务器负载情况

< ?php

//note key的验证过程

if($key != $authkey) {

// exit(key error);

}

$last_line = exec(/usr/local/ismole/w $retval);

$returnArray = explode(load average: $retval[]);

$returnString = $returnArray[];

echo $returnString;

按照上面的实例我们可以用PHP来做任何我们想执行的Linux系统命令SVN更新服务器监控备份恢复日常维护等等比如《利用SVN搭建测试服务器》

               

上一篇:简单介绍下PHP5中引入的MySQLI

下一篇:Linux下的编程 PHP高级技巧全放送(一)