是否可以加载模块而不显示在phpinfo()页面上?

时间:2017-04-21 16:53:43

标签: php linux .htaccess loadmodule

enter image description here我们的测试环境中有一个phpinfo()页面,显示标题已加载模块,并显示所有已加载的模块。实际站点上的重复phpinfo()页面没有已加载模块部分,并且一些处理GZIP压缩等内容的模块看起来好像没有加载。 Linux人员说有问题的模块(mod_headers,mod_deflate和mod_expires)在LoadModule语句中。

我希望为此网站启用GZIP压缩功能。通过.htaccess我已成功开启GZIP压缩与其他站点和其他服务器,但不在此站点/服务器上。因为phpinfo()上没有显示已加载的模块,我试图确定,是否可以加载模块而不显示在phpinfo()页面上?

PHP版本是5.6.30

2 个答案:

答案 0 :(得分:0)

是的,如果PHP在Apache上作为CGI或FastCGI运行。如果PHP作为模块在Apache上运行,答案就是否定。感谢这篇文章:Alternatives to apache_get_modules() to get list of loaded apache modules

答案 1 :(得分:0)

对于正在寻找其他答案的任何人(就像我一样):

如果看到“ php -m”已加载模块,并且phpinfo()页面显示正确的php.ini文件正在加载,但是新模块仍未显示在列表中,则可能有用:

如果使用的是PHP FastCGI Process Manager(安装Web Server和PHP时,某些Linux发行版默认会启用它),则不仅需要重新启动/重新加载Apache,还需要重新启动/重新加载FPM < / strong>(php-fpm):

sudo systemctl reload httpd
sudo systemctl reload php-fpm

之后,您创建的phpinfo()页面将正确显示添加的新模块(FPM在加载了新模块的页面中提供服务)