社区
基础编程
帖子详情
shell_exec()没权限?
灬上海爽爷
2011-03-09 12:09:57
小弟初学PHP,很简单的一段代码。
<?php
$out = `dir c:`;
echo '<pre>'.$out.'</pre>';
?>
报错
Warning: shell_exec(): Unable to execute 'dir c:' in D:\phptest\test.php on line 2
cmd.exe已给权限
php.ini下safe mode也是off的
不知还有何情况会导致这种错误发生?
...全文
672
12
打赏
收藏
shell_exec()没权限?
小弟初学PHP,很简单的一段代码。 <?php $out = `dir c:`; echo ''.$out.''; ?> 报错 Warning: shell_exec(): Unable to execute 'dir c:' in D:\phptest\test.php on line 2 cmd.exe已给权限 php.ini下safe mode也是off的 不知还有何情况会导致这种错误发生?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ImN1
2011-03-09
打赏
举报
回复
那就帮不了你了……
灬上海爽爷
2011-03-09
打赏
举报
回复
[Quote=引用 1 楼 snmr_com 的回复:]
换成 "dir c:\\" 试一下
[/Quote]
一样吧,应该不是代码的问题,是哪边权限或者设置的问题吧。
ImN1
2011-03-09
打赏
举报
回复
换成 "dir c:\\" 试一下
灬上海爽爷
2011-03-09
打赏
举报
回复
我是用IIS的,FASTCGI的模式,也是XP,ADMINISTRATOR。
重启IIS后还是无效吧。。
SAFE MODE 早就OFF了。。
kaifadi
2011-03-09
打赏
举报
回复
[Quote=引用 10 楼 snmr_com 的回复:]
引用 7 楼 tcwsyt 的回复:
大家在PHP开发的时候都不会用到``这种么。。
但是shell_exe是需要""的,因为常会碰到路径的\需要转义,你没看我写给你也是""的么?你肯定没去试吧?
[/Quote]
不用试了。问题绝对不在那,我的机器执行成功;就没用\\,测试平台上面已经公布!
$out = shell_exec("dir c:");//代码里没有用:\\
echo '<pre>'.$out.'</pre>';
ImN1
2011-03-09
打赏
举报
回复
[Quote=引用 7 楼 tcwsyt 的回复:]
大家在PHP开发的时候都不会用到``这种么。。
[/Quote]
但是shell_exe是需要""的,因为常会碰到路径的\需要转义,你没看我写给你也是""的么?你肯定没去试吧?
kaifadi
2011-03-09
打赏
举报
回复
[Quote=引用 7 楼 tcwsyt 的回复:]
大家在PHP开发的时候都不会用到``这种么。。
[/Quote]
exec是个不安全的函数,一般个人服务器也好,虚拟空间也好,都会禁用或关闭它,开发站点一般都不用这个,特例除外!
kaifadi
2011-03-09
打赏
举报
回复
权限如果设置都没有问题后!
关闭安全模式safe mode=off甚至完成后记得重新启动apache
灬上海爽爷
2011-03-09
打赏
举报
回复
大家在PHP开发的时候都不会用到``这种么。。
kaifadi
2011-03-09
打赏
举报
回复
代码字符不对!或者权限你没有设置好!
我的这里一切正常!测试平台XP系统,PHP533。XP用户为administrator(管理员)
注意代码格式:
<?php
$out = shell_exec("dir c:");
echo '<pre>'.$out.'</pre>';
?>
输出为:
驱动器 C 中的卷是 WINXP
卷的序列号是 335E-15FE
C:\ 的目录
2010-03-15 14:44 WINDOWS
2010-03-15 14:48 Documents and Settings
2010-03-15 14:57 Program Files
2010-03-15 14:58 0 CONFIG.SYS
2010-03-15 14:58 0 AUTOEXEC.BAT
2011-01-05 22:27 Intel
2011-03-09 08:21 508 RTHDCPL_Dump.txt
2011-01-06 20:05 83 ftnstat.stat
2011-01-15 14:24 58 b.txt
2011-01-07 00:58 Media
2011-01-08 21:28 Downloads
2011-01-16 00:05 249,945 grldr
2011-01-12 20:56 230,304 1.txt
2011-01-15 23:52 0 ExeDosCMD.tmp
2011-01-16 00:05 774,144 message
2011-01-25 15:48 Inetpub
2011-03-01 15:03 memcache
11 个文件 4,844,162 字节
8 个目录 9,732,882,432 可用字节
这个结果和cmd里的一样的。
灬上海爽爷
2011-03-09
打赏
举报
回复
cmd.exe已给权限
这就是那个给CMD权限,我来并账户跟EVERONE都给所有权限了。
Akuma XYD
2011-03-09
打赏
举报
回复
http://blog.ixpub.net/html/68/12931668-403758.html
不过我没找到Security这一栏
不知道能不能解决你的问题
总结
shell
_
exec
调用 php 脚本不成功的原因
shell
_
exec
("php /data/web/code/think MyCronJob") 正常情况下 MyCronJob 执行完成后,会输出文件日志到系统 发现执行成功后,
shell
_
exec
返回NULL,查看日志也
没
有执行成功php脚本 尝试: 1、检查php.ini配置...
ubuntu php
权限
,关于Linux Ubuntu的php
shell
_
exec
()
权限
我的问题是执行
shell
_
exec
()来调用一些exe文件是不行的(实际上不是exe,它是一种linux可执行文件)echo
shell
_
exec
("whoami");我有守护进程echo
shell
_
exec
("ls")我有一些文件名但echo
shell
_
exec
("php -v")我什么都...
php
exec
、 system 、
shell
_
exec
无法执行,
没
有结果,结果为NULLD,解决办法
查看php.ini 是否禁用了这些函数: 找到disable_functions = 把
exec
, system,
exec
_
shell
去掉,用到哪个去哪个; 重启php服务,这一步很重要
shell
_
exec
() php 执行
shell
脚本
在执行的时候发现报错:
shell
_
exec
() has been disabled for security reason
apache php 执行
shell
_
exec
时,怎样获得root
权限
apache php 执行
shell
_
exec
或
exec
等linux命令时,一般是可以执行的, 但是碰到需要root
权限
的命令就执行不了了, 例如更新sphinx的索引: using config file '/usr/local/coreseek/etc/csft.conf'... indexing...
基础编程
21,880
社区成员
140,365
社区内容
发帖
与我相关
我的任务
基础编程
从PHP安装配置,PHP入门,PHP基础到PHP应用
复制链接
扫一扫
分享
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章