RewriteRule, но не если URL содержит - PullRequest
0 голосов
/ 22 июля 2011

Мне нужно изменить это RewriteRule, чтобы не делать что-то, если параметр находится в URL.

RewriteRule ^img/potm/([^/]+) timthumb.php?src=img/potm/$1&h=112&w=160&zc=1

Я думаю, если в матче есть специальный параметр, то он не сделает это? Я предполагаю, что это должно быть сделано с двумя правилами, верно?

Пример

Хороший URL-адрес будет содержать только имя файла, www.example.com/img/potm/blah.jpg это будет иметь значение RewriteRule. Неверный URL будет www.example.com/img/potm/blah.jpg?fail, который не будет проанализирован правилом.

1 Ответ

1 голос
/ 22 июля 2011

Чтобы заставить RewriteRule работать ТОЛЬКО, если строка запроса пуста , вы должны добавить эту строку непосредственно перед RewriteRule строкой:

RewriteCond %{QUERY_STRING} ^$

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

RewriteCond %{QUERY_STRING} ^$
RewriteRule ^img/potm/([^/]+) timthumb.php?src=img/potm/$1&h=112&w=160&zc=1
...