通过phpinfo查看 php加载的php.ini路径下面没有php.ini文件,但是问什么PHP脚本还能够正常的执行

解决方案 »

  1.   

    不加载php.ini可以运行 只是一些php扩展没办法用
      

  2.   

    但是我用php -m命名发现PHP加载了好多模块啊。还有我在他的默认路径下加入了php.ini文件,发现以前能正常浏览的网站不能浏览了。这是什么原因呀
      

  3.   

    不太可能吧 你apache启动了吗?
      

  4.   

    不加载php.ini文件的话,一些功能还是可以使用。但是像一些扩展,一些模块都不能加载的话(例如mysql.dll扩展不加载,不能使用mysql的函数。可能导致你的网站无法打开)
    apache conf配置文件中phpinidir可以查看php.ini的位置。
      

  5.   

    我的apache的conf/httpd.conf里面没有配置phpinidir这个选项,我把linux机器上的php.ini文件都重新命名了,重启apache后,php -m 查看还是有很多模块加载了
      

  6.   

    php -i | grep php.ini得到的路径下面没有php.ini文件
      

  7.   

    没有加载php.ini肯定用不了扩展模块,而如果可以使用,那肯定加载了配置文件!
      

  8.   

    不加载php.ini也能用,只是参数不能修改(除非用ini_set方法),你的phpinfo种的
    Loaded Configuration File  ini路径
    没有文件吗?
      

  9.   

    没有呀,我很郁闷,我将etc下面的php.ini复制到Loaded Configuration File ini路径后,然后对比phpinfo的结果,发现很有些参数的默认值不同(但是我的这个php.ini是默认的呀)
      

  10.   

    一个是php内核中得默认值(最轻量级的运行环境),一个是配置文件的默认值,肯定会有不同的
      

  11.   

    不加载php.ini会按默认值运行,仅加载编译时开启的扩展(这部分扩展会随php源代码一同编译,因此无需装载额外的so)。
      

  12.   

    不加载php.ini是100%可以用的。
    只是如果你的网站需要mysql扩展,而编译PHP时默认没有开启的话,会出现错误。
      

  13.   

    httpd.conf中没有PHPIniDir?
    奇了怪了,怎么会你的linux系统,请注意大小写。应该有的呀。
    这个参数指示的就是你的php.ini所在的位置
      

  14.   

    我的apache下面的httpd.conf里面确实没有PHPIniDir这个选项,我就是不知道php是怎么加载php.ini, 我现在有2太机器,一个测试 一个开发的,上面的php.ini文件是一模一样 但是php -m看到的模块却差别很大,我把php.ini都删掉(重命名)在重启appace php -m的结果还是一样没变
      

  15.   

    php -m只是显示了和php编译在一起的模块。没有加载php.ini的话,php会使用默认的配置。像那些扩展就无法使用。
      

  16.   

    我的也是,phpinfo中显示的是 "Configuration File (php.ini) Path --> D:\windows" “Loaded Configuration File  --> (none) ”,怎么重启都是
      

  17.   

    PHPIniDir 这个在apache中设置一下