web环境是apache+php,但是后来发现popen和fopen不能使用,php.ini已开启allow_url_fopen = On
,请求各位帮忙phpapache

解决方案 »

  1.   

    什么都没有提示,我用error_reporting(E_ALL);也没有报错
      

  2.   

    $a=popen("ps ax |grep httpd",r);
    $s=fgets($a);
    echo $s;
    代码就这么简单,网页打开是空白。没有任何提示
      

  3.   

    linux下检查权限,你必须有权限执行才可以
      

  4.   

    1. 你用php 运行命令或者打开文件,肯定使用apache用户进行操作。所以,你操作命令和文件必须给apache 权限
    2. 若你是操作在某个用户xxx(/home/xxxx)目录下私有文件,好几个Linux 系统下是不允许的。即使你chown 给了apache用户。(例如: CENTOS)这点是我经验所得,暂时没有找到相关文案支持。
      

  5.   

    在php.ini中打开日志,设置error_log的路径。然后查看日志。
    如果想在页面上输出,除了设置error_reporting外,也要设置 ini_set('display_errors','On');
      

  6.   

    $file = fopen("test.txt","r");while(! feof($file))
      {
      echo fgets($file). "<br />";
      }fclose($file);你新建一个文本,读取文本试试。
      

  7.   

    现在是这个问题,我用终端php test.php 执行是可以的,但是浏览器访问却没有结果,我也感觉是权限问题,但是怎么解决呢?
      

  8.   

    问题1:只要是给apache 用户相关文件操作权限即可解决问题2:暂时没有好方法,移到其他公共目录;如:/var/www/html/等。