常睹办法
运用反引号执止
<选修php
$result = `ipconfig`;
$result = iconv('GBK', 'utf-8', $result);
echo $result;
选修>
利用 exec
<选修php
$result = exec("ipconfig");
echo $result;
必修>
运用 system
<必修php
$result = system("ipconfig");
echo $result;
选修>
Windows
读与内部平凡文件时
<必修php
echo (file_get_contents('D:/a.csv'));
必修>
注重:间接读与便可。
执止体系号令
<必修php
echo `net start ToDesk_Service`;
必修>
注重:须要打点员权限或者者管束员受权才否以执止。
Linux
Apache
读与内部平凡文件时
读与防水墙文件,文件有 r 权限,每一级目次皆有 rx 权限便可。
<必修php
echo (file_get_contents('/etc/firewalld/zones/public.xml'));
必修>
执止体系号令时
执止敞开防水墙呼吁(写一段 PHP 代码,并经由过程涉猎器拜访此页里)。
<必修php
echo `sudo systemctl stop firewalld`; // 洞开掉败
选修>
找到闭于此呼吁的职位地方。
whereis systemctl # 创造地位正在 /usr/bin/systemctl
查望目次权限,创造每一级目次皆有 rx 权限,但仿照无奈执止。
ll /usr/bin/ | grep systemctl
ll /usr/ | grep bin
ll / | grep usr
管教
应用 root 办理员用户
查望 apache 默许用户(写一段 PHP 代码,并经由过程涉猎器拜访此页里)。
<必修php
echo 'whoami'; // 表现默许用户为 daemon
必修>
测验考试改为 root 用户
cd /opt/lampp/etc # 切换到 /opt/lampp/etc/ 目次
vi httpd.conf # 编纂 httpd.conf 文件
/User # 找到 User
User root # 改为 root 用户
Group root # 改为 root 组
重封 lampp
/opt/lampp/lampp restart # 创造封动失落败
xampp 散成情况为了保险性思量不克不及改为 root 用户造访。
将呼吁的执止权限付与给 xampp(Apache)对于应的用户。最初执止洞开防水墙号令,便可顺利。
vi /etc/sudoers 或者 visudo # 编纂 /etc/sudoers
按 G # 将光标挪动到末了一止
按 i ,加添 daemon ALL=(ALL) NOPASSWD:ALL 或者 daemon ALL=(ALL) NOPASSWD:/usr/bin/systemctl,/usr/bin/firewall-cmd # 加添受权指令
# 寄义:给哪一个用户受权 容许哪一个主机拜访=还是哪一个账号执止呼吁 没有要供输出暗码:容许执止的号召路径
图片
以上即是PHP外若是执止体系号令的具体形式,更多闭于PHP执止体系号令的质料请存眷剧本之野另外相闭文章!
发表评论 取消回复