htaccess无法编译正则表达式

时间:2016-09-02 03:45:15

标签: regex .htaccess mod-rewrite apache2

我收到此错误消息:

RewriteRule:无法编译正则表达式

'([0-9]+)/((?!thumb)[A-Za-z0-9_-\\s]+)\\.([A-Za-z0-9_-\\s]+)$'

发生此问题的代码是:

RewriteRule ([0-9]+)/((?!thumb)[A-Za-z0-9_-\s]+)\.([A-Za-z0-9_-\s]+)$ ../members/download.php?u=$1/$2.$3

1 个答案:

答案 0 :(得分:1)

在你的角色集类中,你有:

_-\s

这意味着,在此上下文中,捕获具有介于_\s之间的ASCII值的所有字符。它们如下:

  1. _是95
  2. \s是32
  3. 而且,这个范围是无效的;导致错误。

    -放在课程的最后以使模式有效:

    RewriteRule ([0-9]+)/((?!thumb)[A-Za-z0-9_\s-]+)\.([A-Za-z0-9_\s-]+)$ ../members/download.php?u=$1/$2.$3