检查哪些 Apache 模块已启用的最优雅方法是什么?
答案1
如果你使用的是 Ubuntu,请尝试:
apache2ctl -M
答案2
httpd -M
将告诉您哪些模块是内置的或共享的。
答案3
编辑2023:警告- 请谨慎使用。见下文。
如果您无法在远程服务器上运行命令,上述答案均无效。如果您只有“用户”权限或根本没有权限,请尝试创建一个test.php
脚本:
<pre>
<?php
print_r(apache_get_modules());
?>
</pre>
但是,只有将 PHP 安装为 时它才会起作用mod_php
。
解释警告部分 - 看到这一点在过去几年里获得了一定的知名度,我感到有义务要求看一下下面的第一条评论。
简而言之 - 公开这些信息可能会伤害到你。因此,*.php
为这个技巧创建的任何文件都应该有随机/难以猜测的名称,并在收集到必要的信息后尽快删除。
答案4
您还可以使用apachectl
apachectl -t -D DUMP_MODULES