Предотвращение перезаписи запроса в подкаталоге с помощью Apache mod_rewrite - PullRequest
0 голосов
/ 18 декабря 2009

Я хочу переписать правило так, чтобы, если пользователь переходит на URL example.org/stuff/junk.jpg, правило обрабатывалось и заканчивалось на re-writer.php, но если пользователь переходит на example.org/stuff/hackingisawesome/junk.jpg, правило не будет срабатывать, и они будут получить стандартный 404 (или страницу, если таковая существует).

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

Так кто-нибудь знает либо:

a) способ, которым это уже встроено в синтаксис mod_rewrite, или

б) хороший, надежный способ справиться с этим с помощью регулярных выражений?

Ссылки на документацию или учебные пособия приветствуются. Я просто не понимаю, куда идти дальше.

О, и я могу представить, как можно просто получить сценарий, который перенаправляет правило, чтобы просто доставить 404, но я бы предпочел использовать правило только при наличии условий.

1 Ответ

0 голосов
/ 18 декабря 2009

Попробуйте это:

RewriteRule ^stuff/[^/]+$ re-writer.php

При этом все запросы будут перезаписаны на /stuff/… только с одним дополнительным сегментом пути до re-writer.php .

...