一般PHP在LINUX服务器上执行shell命令时,只能拥有www:www账户权限,想执行一些系统命令是没有权限的,如重启apache,因为控制apache需要root权限,因此下面的办法可以让PHP执行ROOT权限的命令。
1、建立一个C语言文件,test.c,里面内容如下
#include
#include
#include <sys/types.h>
#include <sys/wait.h>
#include
void main()
{
pid_t pid;
uid_t uid,euid;
uid=getuid();
euid=geteuid();
setreuid(euid,uid);
//下面代码中加入想让PHP执行的命令,如重启apache
system(“/etc/init.d/httpd restart”);
}
2、编译这个c文件 gcc -o test test.c,生成test这个可执行文件
3、给这个test文件赋root权限,并且加入任何用户都能访问的权限
chown root:root test
chmod u+s test
4、在PHP中调用test这个执行文件,来实现重启apache
本文地址:http://www.xmaoseo.com/web-construction/39.html
关注我们:请关注一下我们的微信公众号:扫描二维码
,公众号:TopHtml
版权声明:本文为原创文章,版权归 小猫SEO优化 所有,欢迎分享本文,转载请保留出处!
关注我们:请关注一下我们的微信公众号:扫描二维码

版权声明:本文为原创文章,版权归 小猫SEO优化 所有,欢迎分享本文,转载请保留出处!