Я отправляю это от имени клиента, и я не знаком с Kentico и .NET, поэтому, пожалуйста, потерпите меня.
У нашего клиента есть сайт на двух языках, скажем, на английском и немецком.
URL-адреса в настоящее время выводятся следующим образом:
example.comexample.com/home (когда они пытаются перенаправить это в корень,
они получают петлю)example.com?lang=deexample.com/home?lang=deexample.com/cat-l1/pageexample.com/cat-l2/page?lang=deДаже с канонизацией это очень неаккуратно и плохо для целей SEO.
Мой клиент пытался реализовать многоязычные префиксы для URL-адресов в Kentico 8, но в итоге получил что-то вроде:
example.com/enexample.com/deexample.com/en/pageexample.com/de/seiteЭто лучше, но я не хочу ни перенаправлять корневой домен, ни лишний подкаталог /en/.
Я прошел через форумы поддержки Kentico и попытался найти документацию, но эта информация, похоже, недоступна.
Я хотел бы использовать многоязычные префиксы ТОЛЬКО для альтернативных языков (не по умолчанию). Например:
example.com/example.com/deexample.com/pageexample.com/de/seiteМожет кто-нибудь дайте мне знать:





Если вы правильно поняли, вы хотите по умолчанию (английский) без префикса и другие языки с префиксом. Вы можете сделать это исключительно с помощью настроек Kenitco (у меня были такие же настройки на одном из моих веб-сайтов). Перейдите к settings-> URLs and SEO -> SEO - Cultures.
Вам нужно проверить последние 2 (Использовать языковой префикс для URL-адресов и Разрешить URL без языковых префиксов). Вот документация Также посмотрите как настроить префиксы
Также убедитесь, что в sites -> your site name -> culture Культура контента по умолчанию установлена на английский язык. Я знаю, что вы можете использовать с маршрутами, т.е. у вас будет / home для английского и / de / home для немецкого, но я не думаю, что вы можете сделать это со стандартными URL-адресами. По сути, вам придется переключиться на маршрутизацию всего сайта (если ваш сайт небольшой, вы можете сделать это вручную).
P.S. Когда вы добавляете новый маршрут, вам необходимо перезапустить приложение, чтобы маршрут работал (особенно в 8).
Для людей, которым интересно, должен ли язык по умолчанию иметь языковой тег в URL-адресе или нет: Должен ли язык по умолчанию многоязычного веб-сайта быть частью URL-адреса?