后端开发|php教程
nbsp,mkdir,Linux,sh,root
后端开发-php教程
php利用exec执行shell脚本问题
先说下我想做的事情:
将Linux下的操作,web化,使用户可以通过web端进行基本的操作,但是现在在写创建目录的代码:
$mkdir_command = “/home/myname/myshell/mkdir.sh /$directory/ $name”;
exec($mkdir_command,$output,$return);
…..
我也知道在web端执行shell脚本,其实在Linux下是以Apache的权限来运行的,
但是在Linux下我将mkdir.sh在运行时的权限修改为root的了,也就是说任何调用该文件的用户在执行的时候都是以root的权限来执行的:chmod 777 mkdir.sh ; chmod u+s mkdir.sh
但是在网页端还是执行不成功。
单独在Linux下是可以执行成功的,
希望大家发表一下意见或者看法,谢谢!!
——解决方案——————–
Apache对该目录要有写的权限
——解决方案——————–
1.web将结果写到 一个文件里 例如需要创建什么 到哪创建
消消乐游戏源码的难点,vscode显示tab和空格,ubuntu删除无线,tomcat网址打不开,爬虫学习步骤,php与java哪个难,江苏seo优化认真负责,手游账号交易网站源码,后台模板 三级菜单lzw
2.linux root 定时 调用 shell 查看文件是否存在需要更动的内容
如果是 这个时候就是用root 来操作了
便利一百源码,vscode工程视图,.py ubuntu,tomcat查询端口,qt找不到sqlite驱动,ecshop 评论采集插件,前端框架是什么意思啊,农民的追求爬虫怎么过,php搜索页面,杭州seo软件电话,动画效果很好的网站,网页qq临时会话代码,canvas 模板拼图lzw
建一个定时器就是了.
——解决方案——————–
你得查看你有没有执行权限
system/exec先执行一条其他简单的命令比如:ls 、ifconfig看看能否执行成功
再去检查.sh文件的权限问题
——解决方案——————–
linux下输入visudo
然后我们在最后追加
apache ALL=NOPASSWD:/bin/sh
然后
php执行exec(“/usr/bin/sudo /bin/sh /xxx/xxx.sh”)
/xxx/xxx.sh 是你要执行的脚本
qq华夏源码,vscode向上复制,ubuntu版mx3,tomcat错误类型,sqlite 需要安装吗,wordprss 手机端插件,前端用得多的框架,爬虫培训机构排名,php 入数组,蓝狐seo管理系统,网站 小偷程序,网页java,仿快视频模板,jsp注册页面完整代码 含日期地址,vfp酒店管理系统,微擎小程序后台修改lzw
看看这篇文章吧,可以解决你的问题
/vindo/article/details/3610587
——解决方案——————–
加 sudo
如果觉得《php利用exec执行shell脚本有关问题》对你有帮助,请点赞、收藏,并留下你的观点哦!