Нужна помощь в настройке <rule>в urlrewrite - PullRequest
0 голосов
/ 01 октября 2019

У меня есть веб-сайт mysite.com (SpringBoot 2.0), где я использую локализацию mysite.com?lang=en или mysite.com?lang=uk. Как я могу настроить в urlrewrite.xml org.tuckey.web.filters.urlrewrite.UrlRewriteFilter;Чтобы получить: от mysite.com?lang=ru mysite.com по умолчанию en language

mysite.com
mysite.com/test
mysite.com/save/wer

Другие языки

from mysite.com?lang=uk
mysite.com/uk
mysite.com/uk/test
mysite.com/uk/save/wer

<rule>
   <from>^(.*(lang=(ru|uk)).*)$</from>
   <to type="redirect">/%{parameter:lang}</to>
 </rule>
<rule>
  <from>^(.*(lang=(uk)).*)$</from>
   <to type="redirect">/</to>
 </rule>

1 Ответ

0 голосов
/ 09 октября 2019

Вы можете использовать это правило для достижения того, что вы пытаетесь

<rule>
    <from>^(.+)lang=(..)(.+)$</from>
    <to type="redirect">$1/$2/$3</to>
</rule>

Объяснение: Разделите входящий URL-адрес на 3 части

Часть 1: Каждая вещь до lang =

Часть 2: 2 символа после lang =

Часть 3: Каждая вещь после 2 символов

Переслать запрос, удалив lang = и сохранив все остальное

...