📜  php 获取内容 phpinfo 不显示 - PHP (1)

📅  最后修改于: 2023-12-03 15:33:39.138000             🧑  作者: Mango

PHP 获取内容 phpinfo 不显示

经常会出现使用phpinfo()函数获取PHP配置信息,但是页面上没有任何输出的情况。这种情况就要考虑以下几个方面:

  1. PHP.ini 配置问题:检查php.ini文件中 output_buffering是否被禁用或者被配置为Off。如果是output_buffering = Off,则禁用了输出缓冲区(Output Buffering),phpinfo()函数将无法输出配置信息,需要将其改为output_buffering = On或者output_buffering = 4096
output_buffering = On
  1. PHP 代码问题:检查PHP代码中是否手动关闭了输出缓冲区。如果使用了ob_end_clean()等关闭缓冲区的函数,则也会导致phpinfo()函数无法输出信息,这时需要去掉手动关闭输出缓冲区的相关代码。
// 可能出现的代码:
ob_end_clean();
  1. Web 服务器问题:有时Web服务器会对phpinfo()函数做出限制,如果你使用的是apache服务器,则可以在.htaccess文件中添加以下代码:
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>

如果你使用的是nginx服务器,则可以在nginx.conf配置文件的http模块中添加以下配置:

server_tokens off;
fastcgi_hide_header X-Powered-By;

总结一下,如果phpinfo()函数无法输出信息,我们需要先检查output_buffering设置,然后检查代码中是否手动关闭了输出缓冲区,最后检查Web服务器是否对phpinfo()函数做出了限制。

希望以上信息能够帮助你解决phpinfo()无法输出信息的问题。