【问题标题】:Correct way to filter User-Agents with .htaccess使用 .htaccess 过滤用户代理的正确方法
【发布时间】:2017-10-26 15:56:23
【问题描述】:

我见过两种根据部分字符串名称过滤用户代理的方法:

RewriteCond %{HTTP_USER_AGENT} ^$ [OR]
RewriteCond %{HTTP_USER_AGENT} ^.*EventMachine.*$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*NerdyBot.*$ [NC]
RewriteRule ^.* - [F,L]

RewriteCond %{HTTP_USER_AGENT} .*EventMachine.* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} .*NerdyBot.* [NC]
RewriteRule ^.* - [F,L]

显然,两者的结果相同,但其中哪一个是正确的?

【问题讨论】:

    标签: apache .htaccess


    【解决方案1】:

    两者的结果相同

    不,他们没有。

    一个匹配省略的值、EventMachine 和 NerdyBot。

    其他只匹配 EventMachine 和 NerdyBot

    哪一个是正确的?

    这取决于你想要什么行为。

    【讨论】:

    • 让我直截了当地说:所以第一个匹配一个空的用户代理字符串或这两个字符串中的任何一个:EventMachine 或 NerdyBot,第二个匹配 EventMachine 或 NerdyBot?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多