使用PHP的exec函数调用linux的shell命令,如date去修改时间或shutdown去实现关机/重启,但是返回值都是失败的。经过多次试验,认定是没有权限的问题。
所以,小弟在此请教各位,如何才能设置权限,调用linux shell命令。
谢了!

解决方案 »

  1.   

    貌似Linux下PHP用户没有这么高的权限。
      

  2.   


    可以设定的,好像是设置apache,但是没找到资料。有个linux系统openfiler(存储管理的系统)就可以做到。但没从他的源码和系统设置上找到什么蛛丝马迹。
      

  3.   

    这要看你调用.php程序的用户的权限了,如果你是在ROOT的crontab中调用的,修改时间与重启关机都没问题。
    如果你是通过apache调用的,权限默认是不过的,如果你非要这么做,可以提升apache用户的权限
      

  4.   


    高手啊,呵呵。
    请问如何提升apache权限呢。我在httpd.conf里面修改
    User root
    Group root
    但是无法重启httpd了,说是给的权限太高。
    请问如何提升apache权限?
      

  5.   

    找本linux基本的书来看一下就OK了
    无非是修改属主,或者增加权限.
    chown和chmod这两个命令结合起来.
      

  6.   

    你可以把apache默认用户(我的是daemon)加入ROOT用户组。
    不过这样安全上会有风险
      

  7.   

    通常是用C写一个wrapper,因为脚本不能setuid,在php中执行setuid为root的程序,
    执行这个程序时会获得root权限
      

  8.   

    UNIX环境编程第二版 4.4
    详细讲述了这个问题