我需要从php执行命令写入我的vhosts.conf.我有一个add_vhost.sh文件:
cat /home/www/test/conf/vhosts.conf >> /etc/httpd/conf.d/vhosts.conf
Run Code Online (Sandbox Code Playgroud)
这是PHP脚本:
exec($path_to_add_vhost_sh_file, $output);
Run Code Online (Sandbox Code Playgroud)
我想设置没有密码要求peter用户执行此文件,所以我做了我的下一件事/etc/sudoers
peter ALL=(ALL)NOPASSWD:/home/www/test/conf/add_vhost.sh但即使在控制台中它仍然无法正常工作.fedora 15
如果您的网络服务器以www-data用户用户身份运行:
www-data ALL=(ALL:ALL) NOPASSWD: /path/to/your/script
Run Code Online (Sandbox Code Playgroud)
如果没有,请替换www-data您的Web服务器的用户名.
在PHP中不要错过在前面添加命令行sudo:
exec('sudo /path/to/your/script');
Run Code Online (Sandbox Code Playgroud)