【问题标题】:Apache mod_rewrite %{HTTP_USER_AGENT} not equal + or condition (list)Apache mod_rewrite %{HTTP_USER_AGENT} 不等于 + 或条件(列表)
【发布时间】:2012-12-17 19:29:33
【问题描述】:

我现在的情况是这样的:

RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC]

我想知道如何将这个条件换成if not 上述值之一。

我对这样的事情很生气:

RewriteCond %{HTTP_USER_AGENT} !="android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC]

但它不起作用。

【问题讨论】:

    标签: apache .htaccess mod-rewrite redirect


    【解决方案1】:

    问题是operamobile 之间有一个空格,这会导致 mod_rewrite 将其解析为多个参数。尝试在! 中使用括号而不是引号并转义空格:

    RewriteCond %{HTTP_USER_AGENT} !(android|blackberry|ipad|iphone|ipod|iemobile|opera\ mobile|palmos|webos|googlebot-mobile) [NC]
    

    【讨论】:

      【解决方案2】:

      非常接近你不需要在否定!之后添加=

      RewriteCond %{HTTP_USER_AGENT} !"android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC]
      

      【讨论】:

        猜你喜欢
        • 2013-07-12
        • 1970-01-01
        • 2012-05-18
        • 2013-07-25
        • 2014-05-26
        • 2016-06-18
        • 1970-01-01
        • 2013-05-19
        • 1970-01-01
        相关资源
        最近更新 更多