Apache2 - 标头指令不起作用

Apache2 - 标头指令不起作用

我想增强服务器的安全性,因此我遵循指导关于服务器安全。我对这个主题还不熟悉,因此有很多东西我很难理解,配置文件中也有很多需要更改的地方。
目前,我正在尝试使用和HttpOnly标志Secure设置 cookie 并取消设置X-Powered-By标头,因此我添加了以下指令/etc/apache2/conf-enabled/security.conf

Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
Header always unset X-Powered-By

为了测试该指令,我创建了一个简单的 PHP 文件,在其中设置了 cookie 和标头,但我收到的既不是 也不HttpOnlySecure,而且我仍然收到标头。文件夹中
有一个文件,我还检查了 是否已启用,它返回了(以及其他内容)headers.loadmods-enabledmod_headersapache2ctl -M

headers_module (shared)

我甚至尝试手动加载模块LoadModule,日志告诉我模块已经启用,所以我想那边一切都很好。
请注意,我有一个配置为的虚拟主机:

<IfModule mod_ssl.c>
        <VirtualHost *:443>
                ServerName example.com
                ServerAlias www.example.com
                DocumentRoot /var/www/example.com/public_html
                ErrorLog ${APACHE_LOG_DIR}/error.log
                CustomLog ${APACHE_LOG_DIR}/access.log combined
                Include /etc/letsencrypt/options-ssl-apache.conf
                SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
                SSLCertificateKeyFile /etc/letsencrypt/live/site.org/privkey.pem
        </VirtualHost>
        <VirtualHost *:80>
                ServerName example.com
                ServerAlias www.example.com
                Redirect permanent / https://example.com/
        </VirtualHost>
</IfModule>

根据我在文档中读到的内容,它应该继承未指定服务器配置的地方,无论如何,我尝试将这些指令放在 VirtualHost 配置中,但没有任何效果。
我正在使用Apache/2.4.29,我的配置文件是/etc/apache2/apache2.conf。我肯定我犯了愚蠢的错误,但正如我所说,我是新手!
非常感谢您的帮助。

相关内容