嘿伙计们,我正在尝试删除任何与 apache 相关的信息,因此我在 /etc/apache2 中的 httpd.conf 中添加了以下两行:
ServerSignature Off
ServerTokens Prod
然后我重启了服务器,但信息仍然显示出来。所以我决定直接编辑整个底部的 apache2.conf,并再次添加这两行,它成功了 :o
你知道是什么原因造成的吗?apach2.conf 中包含 httpd.conf 后,其中的某些内容会覆盖我的规则吗?
谢谢你的时间!
答案1
不幸的是,默认apache2.conf
包含 里面的所有内容/etc/apache2/conf.d
。如果你查看 里面的内容/etc/apache2/conf.d/security
,你可能会看到以下内容:
#ServerSignature Off
ServerSignature On
由于文件包含的顺序(我相信它是按字母顺序排列的),这意味着 中的值security
将覆盖 中的值httpd.conf
。只需在 中进行更改security
,或将其注释掉并放入 中httpd.conf
。
答案2
ServerSignature On
因为在任何包含的 conf 文件中,include httpd.conf
在 中的行后面都有一行apache2.conf
,它会覆盖您的语句。
答案3
在看
/etc/apache2/conf.d/security