.htaccess重定向匹配与部分不匹配?

.htaccess重定向匹配与部分不匹配?,.htaccess,.htaccess,我正在管理一些WordPress安装,我厌倦了错误日志中充斥着404个错误,这些错误是由坏机器人程序不断检查已知可攻击/可利用主题目录中的style.css文件引起的,例如: www.example.com/wp-content/themes/thestation/style.css www.example.com/wp-content/themes/wootube/style.css www.example.com/wp-content/themes/vibrantcms/style.css

我正在管理一些WordPress安装,我厌倦了错误日志中充斥着404个错误,这些错误是由坏机器人程序不断检查已知可攻击/可利用主题目录中的style.css文件引起的,例如:

www.example.com/wp-content/themes/thestation/style.css

www.example.com/wp-content/themes/wootube/style.css

www.example.com/wp-content/themes/vibrantcms/style.css

坏机器人正在搜索很多不同的主题,因此,与其为每个主题单独编写规则,不如让redirectmatch匹配style.css的每个实例,只要它不在我使用的实际主题目录中


例如,如果我在目录/twentyten/中使用主题,那么RedirectMatch应该捕获除/twentyten/目录之外的任何目录中访问任何style.css文件的每次尝试。

AFAIK在Apache中无法做到这一点

你能设置自己的404页面吗


您可以将重定向放在那里。

AFAIK在Apache中无法做到这一点

你能设置自己的404页面吗


您可以将重定向放在那里。

好的,您不能使用RedirectMatch执行此操作,但是如果您想启用mod_rewrite,那么您是否正在尝试执行以下操作:

<Directory .../wp-content/themes/>
    RewriteCond $1 !=twentyten
    RewriteRule ^(.*?)/style.css  badBotProbe/style.css [L]
    ...
</Directory>
但这真的是你想要做的只是删除一个404条目吗


以上假设您有权访问根配置。带有微调的相同解决方案适用于相应的
.htaccess

AFAIK,您不能使用RedirectMatch执行此操作,但如果您希望启用mod_rewrite,那么您是否尝试执行以下操作:

<Directory .../wp-content/themes/>
    RewriteCond $1 !=twentyten
    RewriteRule ^(.*?)/style.css  badBotProbe/style.css [L]
    ...
</Directory>
但这真的是你想要做的只是删除一个404条目吗


以上假设您有权访问根配置。带有微调的相同解决方案适用于相应的
.htaccess

,但301到%REMOTE\u ADDR(在我的测试中不起作用,但可以使用dinslayland或example.com)仍将登录access.log。不在error.log中是的。是的,这是正确的:访问日志记录所有访问,错误日志记录坏东西。嗯,你应该把所有不好的东西都记录到错误日志里。我认为,真正的问题是减少审计——已知未知和未知未知之间的可怕对比是什么:你想记录所有不好的东西,但你真的需要意识到你可能遗漏的新探测。在这方面,我发现对访问日志的审计减少通常更有趣:什么可疑的URI被处理为200s?有趣,但301到%REMOTE_ADDR(在我的测试中不起作用,但可以使用dinslayland或example.com)仍然会登录access.log。不在error.log中是的。是的,这是正确的:访问日志记录所有访问,错误日志记录坏东西。嗯,你应该把所有不好的东西都记录到错误日志里。我认为,真正的问题是减少审计——已知未知和未知未知之间的可怕对比是什么:你想记录所有不好的东西,但你真的需要意识到你可能遗漏的新探测。在这方面,我发现对访问日志的审计减少通常要有趣得多:哪些可疑的URI被处理为200?