2014-05-14 4 views
1

Это мое правило .htaccess:.htaccess и пустые значения

RewriteRule ^([a-zA-Z0-9\.]+)/([0-9\.]+)/(.*)/(.*)$ m.pl?id=$1&cv=$2&cu=$3&qty=$4 

Таким образом, ссылка как cpa/11/axg/4 перенаправляется правильно.

Но если третье значение пусто, то есть

cpa/11//4, не попадет к правилу, определенным выше.

Я не уверен, как это решить.

ответ

0

Поскольку третий параметр является необязательным, решается его следующим образом:

RewriteRule ^([a-zA-Z0-9\.]+)/([0-9\.]+)/?(.*)/(.*)$ m.pl?id=$1&cv=$2&cu=$3&qty=$4 
0

Вы можете иметь 2 отдельные правила для решения этих проблем:

RewriteRule ^([a-zA-Z0-9.]+)/([0-9.]+)/([0-9]+)/?$ m.pl?id=$1&cv=$2&qty=$3 [L,QSA] 

RewriteRule ^([a-zA-Z0-9.]+)/([0-9.]+)/([^/]+)/([^/]+)/?$ m.pl?id=$1&cv=$2&cu=$3&qty=$4 [L,QSA] 
Смежные вопросы