UrlRewrite & Redirect с дополнительной частью / XX / home в Apache2 - PullRequest
0 голосов
/ 28 марта 2011

Для идеальной работы и файла журнала ошибок 404, я должен перенаправить все предыдущие (теперь неправильные) URL домашней страницы на новую домашнюю страницу. Для этого у меня есть частично рабочая перезапись:

RewriteRule ^home$ /en/aster [R=301]
// Works for site.com/home but NOT for site.com/en/home or site.com/xx/home  etc.

Q1. Как сделать необязательную часть ?????/ sothat site.com/anything/home перенаправленной навсегда на site.com/anything/home, убедившись, что корень - это не другая папка, а фактический корень реальных сайтов, за которым следуют два языковых символа, затем / home?

Q2. для согласованности и в целях SEO, мне нужно [R=301] или [R=301,L]?

Ваши идеи и помощь высоко ценятся.

1 Ответ

2 голосов
/ 29 марта 2011

Не уверен, что я полностью понимаю, к чему вы хотите перенаправить site.com/anything/home, но вот как я понял:

RewriteRule (.*)/home $1/en/aster [R=301,L] Будет соответствовать всем запросам, оканчивающимся на "/ home". (.*) будет держать URL-адреса на том же пути. Поэтому site.com/anything/home перенаправляет на site.com/anything/en/aster

Что касается SEO, то между [R=301,L] и [R=301] нет никакой разницы. L информирует mod_rewrite не обрабатывать дальнейшие правила, что в данном случае является тем, что вам нужно, поскольку вы перенаправляете на новую страницу.

Надеюсь, это поможет.

...