主题:php读写文件(LINUX)
fanjianan
[专家分:60] 发布于 2007-05-10 19:18:00
想进行PHP 写非apache主目录内文件!! 比如说设置 apache 主目录是 /var/www/html 想要读写/etc/passwd 文件 (passwd 文件已经设置了可以写入) ,那么apache怎么设置呢?? fopen("/etc/passwd","w") 内容写不进去?? 有没有人进行过类似的操作??
主要在于是不是可能进行这样的操作呢 ?
最后更新于:2007-05-10 21:15:00
回复列表 (共7个回复)
沙发
qining-china [专家分:1150] 发布于 2007-05-11 12:09:00
理论上可以写
但是你要写的目录,必须将apache的用户组可写权限加上
板凳
fanjianan [专家分:60] 发布于 2007-05-11 19:52:00
权限已经加上了.并改为root权限 但还是不行.
exec("whoami") 能运行. exec("ls -l") 也能运行,但是exec("cp aaa bbb")(aaa 为一个文件) 却不能执行!!
即使我用perl 写了脚本(cpconf.pl)进行 改为可执行权限,可是脚本cpconf.pl 能够进行复制 exec("cpconf.pl") 就不能进行复制了!!
可能是apache 写权限不够!! 请问各位如何更改apache 的权限呢??
3 楼
qining-china [专家分:1150] 发布于 2007-05-11 21:06:00
请确认apache已经对/etc/passwd目录拥有写权限
4 楼
fanjianan [专家分:60] 发布于 2007-05-12 11:44:00
是的,确实有写权限!! ,是否像exec 这些函数还需要其他设置呢!!!
5 楼
qining-china [专家分:1150] 发布于 2007-05-12 11:57:00
try function "system"
6 楼
fanjianan [专家分:60] 发布于 2007-05-12 20:23:00
已经 尝试了 . system() 已是一样,能够执行. ls whoami 这些命令,但就是不能执行cp touch 这些更改命令
7 楼
fanjianan [专家分:60] 发布于 2007-05-13 22:00:00
我想exec 不能执行写的操作和不能写入其非主目录的原因应该是一样的,要在哪里设置一下.有没有用过这些操作的?? 有没有人进行操作过?
我来回复