You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apache+WordPress站点.htaccess安全头配置问题求助

Apache + WordPress 安全头配置无效排查方案
  • 确认.htaccess的位置与权限
    • 确保文件放在网站根目录(与wp-config.php同层级),权限设置为644,保证Apache拥有读取权限,避免因权限问题导致配置不生效。
  • 检查Apache必需模块是否启用
    • 安全头依赖mod_headers模块,执行apache2ctl -M(Debian/Ubuntu系统)或httpd -M(CentOS/RHEL系统),查看输出中是否存在headers_module (shared)。若未启用,需执行a2enmod headers(Debian/Ubuntu)或在httpd.conf中添加LoadModule headers_module modules/mod_headers.so(CentOS/RHEL),随后重启Apache服务。
  • 排查LiteSpeed Cache插件的干扰
    • 进入插件后台「优化」→「安全」选项,确认是否存在覆盖自定义.htaccess的安全头配置项,若有则关闭该功能或同步你的自定义设置。清理缓存时,除了插件缓存,还需强制刷新浏览器缓存(Ctrl+Shift+R),避免浏览器留存旧响应头。
  • 验证.htaccess配置语法
    • 确保安全头配置包裹在<IfModule mod_headers.c>块内,示例正确配置如下:
      <IfModule mod_headers.c>
        Header always set X-Content-Type-Options "nosniff"
        Header always set X-Frame-Options "SAMEORIGIN"
        Header always set X-XSS-Protection "1; mode=block"
        Header always set Referrer-Policy "strict-origin-when-cross-origin"
        Header always set Permissions-Policy "geolocation=(), microphone=(), camera=()"
        # 注意Content-Security-Policy需根据站点实际资源调整规则
        Header always set Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval'; style-src 'self' 'unsafe-inline';"
      </IfModule>
      
    • 检查指令拼写(Apache指令大小写敏感,如Header不能写成小写)、引号闭合等语法错误,避免配置被Apache忽略。
  • 排查其他插件/主题的覆盖冲突
    • 部分安全类插件(如Wordfence、iThemes Security)或主题可能自带安全头设置,会覆盖.htaccess中的配置。临时禁用这类插件/切换默认主题后重新扫描,逐步定位冲突来源。
  • 直接验证响应头
    • 使用curl -I https://你的域名命令查看实际返回的响应头,若未出现自定义安全头,说明Apache未加载.htaccess配置;若已存在但扫描工具未识别,需检查是否有CDN缓存未刷新,等待节点同步后再测试。

内容的提问来源于stack exchange,提问作者Paulo do Porto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 21:37:24