如何在WordPress中通过.htaccess文件封禁指定User Agent
通过.htaccess封禁指定User Agent操作指南
前置说明
你需要封禁的目标User Agent为:Tachiyomi Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:77.0) Gecko/20100101 Firefox/78.0 1985775847
操作步骤
- 第一步:先备份站点根目录(和wp-content、wp-admin同级目录)下的
.htaccess文件,避免修改出错导致站点无法访问,可直接复制一份重命名为.htaccess.bak留存 - 第二步:编辑原
.htaccess文件,在文件的最顶部或最底部添加如下规则:
<IfModule mod_rewrite.c> RewriteEngine On # 匹配目标User Agent,NC标识不区分大小写 RewriteCond %{HTTP_USER_AGENT} "Tachiyomi Mozilla/5\.0 \(Windows NT 10\.0; Win64; x64; rv:77\.0\) Gecko/20100101 Firefox/78\.0 1985775847" [NC] # 匹配成功返回403禁止访问,L标识后续规则不再执行 RewriteRule ^.* - [F,L] </IfModule>
- 第三步:保存修改后的
.htaccess文件,上传覆盖服务器上的原文件即可生效
验证与注意事项
- 可通过curl命令测试是否生效,执行如下命令看返回结果是否包含403状态码:
curl -I -A "Tachiyomi Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:77.0) Gecko/20100101 Firefox/78.0 1985775847" 你的站点域名 - 规则里已经对
.、()等正则特殊字符做了转义,不要随意修改规则里的转义符,否则会导致匹配失效 - 后续在WordPress后台更新固定链接设置时,注意不要覆盖你新增的这段封禁规则,建议固定在默认WordPress伪静态规则块外添加
- 若修改后站点出现访问异常,直接用之前备份的
.htaccess.bak文件覆盖回原文件即可恢复
内容的提问来源于stack exchange,提问作者Satyam
相关产品推荐
相关产品推荐

