有時需要PHP執(zhí)行一些外部命令和Linux進行交互娘侍,但是apache的執(zhí)行用戶沒有root權限畜号,這時就需要找到apache在Linux上的執(zhí)行用戶,修改執(zhí)行用戶或直接賦予執(zhí)行用戶一定的權限
首先用PHP執(zhí)行一行代碼檢查apache的執(zhí)行用戶是誰:
<?php
system("whoami");
在我的主機上輸出的是apache 徐矩,對一些特殊的外部命令默認沒有權限掐隐,這時需要以下操作:
新建apache執(zhí)行用戶 如 gitforshell
adduser gitforshell
-
修改apache的配置文件,首先找到你的apache版本的配置文件并打開它
-
為你的執(zhí)行用戶賦予root權限:
vi /etc/sudoers
到這里就配置完成了驰怎,重啟apache service httpd restart
阐滩,然后再試著用PHP執(zhí)行 system("whoami");
試試,看下輸出結果有沒有改變县忌。