советы по перенаправлению mod_alias - PullRequest
0 голосов
/ 01 апреля 2011

все.Я ищу сайты, но не могу найти свой ответ, поэтому я публикую его.

Я хочу перенаправить URL-адрес следующим образом

example.com / css / .... ====>example.com/templates/css/...

example.com / path / css / .... ====> example.com/path/templates/css/...

Я устал регулярно, не хочу.например,

RedirectMatch (.*)/css/(.*)\.css  $1/templates/css/$2.css 

Я думаю, что последний регулярный может быть правильным.но нужно установить регулярный ленивый режим.Я нахожу документ apache о mod_alias и mod_rewrite, не нашёл разговоров об этих советах.

нужна помощь.спасибо!

Ответы [ 2 ]

0 голосов
/ 11 апреля 2011

хорошо, я проверил это, и я наклонился, чтобы подтвердить свойства XD.

(^(t(?!emplates)|[^t])*?)/(css|js)/(.*)\.(css|js)$ $1/templates/$3/$4.$5

это работает очень хорошо для меня.Надежда может помочь некоторым людям.

0 голосов
/ 01 апреля 2011

Вы получаете ленивое совпадение, добавляя ? после *, например:

(.*?)/css/(.*?)\.css

Затем * пытается найти как можно меньше совпадений. Это должно преобразовать URL в вашем примере, как вы ожидаете.

Кстати: Apache mod_rewrite Perl-совместимое регулярное выражение с некоторыми дополнениями .

...