2016-09-02 5 views
1

я получил сообщение об ошибке:Htaccess не может составить регулярное выражение

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

В вашем характере комплект, у вас есть:

_-\s 

, что означает, в этом контексте, чтобы зафиксировать все символы с значениями ASCII между значениями _ и \s. Они заключаются в следующем:

  1. _ находится в 95
  2. \s является 32

И, этот диапазон, таким образом, недействительным; что приводит к ошибке.

Поместите - в конце класса, чтобы сделать шаблон работы:

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

Wooooooooooow! Работает! Многое много спасибо! –

Смежные вопросы