Как я могу перенаправить /? Lang = en в / en? - PullRequest
0 голосов
/ 26 июня 2019

У меня проблемы с перенаправлением многоязычного сайта на одну страницу.Мое перенаправление на htaccess не работает должным образом.Мне нужна помощь с тем, как это можно сделать.В моем htaccess, когда я добавляю эти две строки

RewriteCond %{QUERY_STRING} ^lang=en$
RewriteRule ^ /en? [R=301,L]

редирект работает, но mysite.com/en show 404 не найден.Кто-нибудь поможет мне с этим?

Ответы [ 2 ]

0 голосов
/ 28 июня 2019

Ваше правило перенаправления, как показано в вопросе, работает нормально.Бот, вам также нужно правило переписывания для обработки /en:

RewriteEngine On

RewriteCond %{ENV:REDIRECT_STATUS} ^$
RewriteCond %{QUERY_STRING} ^lang=([a-z]{2})$
RewriteRule ^ /%1? [R=301,L]

RewriteRule ^([a-z]{2})/?$ ?lang=$1 [QSA,L]
0 голосов
/ 26 июня 2019

Если ваш браузер заканчивается на mysite.com/en, ваше перенаправление работает, поэтому ваш вопрос не в том, как перенаправить, а в том, почему на вашем сайте нет контента в / en. Вы должны исследовать это.

...