php中exec()得到的139返回代码是什么含义?
exec($command,$output,$result);$result得到139,$output为空 $command没有正常执行.... 请详细描述 我想用exec执行一个自己编的程序
放在自己的目录(如/var/www/tool)都不能执行 返回执行代码126
但是将程序cp到/usr/bin就可以执行 发挥正常执行的代码0
exec()一个系统命令也可一执行 执行whoami显示apache
我登录apache 然后执行/tool里面的程序没问题
我把所有相关的目录文件都设成777了 也不行
那个测试程序只是向标准输出输出一行字
我把真正要用到的程序也cp到/usr/bin中 他需要读入一个文件 输出一个文件 在/var/www/run这样的目录中 返回代码139。。。没有执行成功 如果不给参数不让他做操作的话就能正常执行 因为php.ini中safe_mode_exec_dir默认让/usr/bin下的某些指令可以执行
你在safe_mode_exec_dir中追加/var/www/run和/var/www/tool 不是的
safe_mode是off
Fedora Core4
php和apache都是fc4自带的版本 基本没有改动过配置 打开safe_mode=on
然后safe_mode_exec_dir中追加/var/www/run和/var/www/tool 加绝对目录: /path/to/your/bin
或者设置 PATH 到你的程序的所在地。
注意 php 一般用的是 apache 这个用户帐号。这主要看你的 apache 的设置。
页:
[1]