PHPInfo显示我的memory_limit为128M,所以我对为什么错误说我只有64M感到困惑。 phpinfo是否有可能错误报告?还是让PHP使用两个单独的php.inis?

该错误是由我的一位同事在我不知情的情况下添加的主要php文件之一中的ini_set调用引起的。

最佳答案

PHP的配置可以在多个位置进行设置:

  • 主系统php.ini(通常在/etc中的某个地方)
  • 在Apache配置的某个位置(通过php_value的httpd.conf或每个站点的.conf文件)
  • CLI和CGI可以具有不同的php.ini(使用命令php -i | grep memory_limit检查CLI conf)
  • 本地.htaccess文件(也php_value)
  • 脚本内脚本(通过ini_set())

  • 在PHPinfo的输出中,“Master”值为已编译的默认值,而“Local”值为实际有效的值。它可以与默认值保持不变,也可以在以上任意位置覆盖。

    还要注意,PHP通常具有不同的.ini文件,用于命令行和基于Web服务器的操作。与在基于Web的脚本中运行phpinfo()相比,从命令行检查ojit_code将报告不同的值。

    10-08 19:52