codemix/yii2-localeurls

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Tivos
Сообщения: 41
Зарегистрирован: 2015.08.12, 12:34

codemix/yii2-localeurls

Сообщение Tivos »

Добрый день.
Помогите решить задачу.
Для мультиязычности использую плагин codemix/yii2-localeurls.

Код: Выделить всё

  'urlManager' => [
            'class' => 'codemix\localeurls\UrlManager',
            'languages' => ['ru', 'en', 'de'], // List all supported languages here
            'enablePrettyUrl' => true,
            'showScriptName' => false,
            'enableLanguagePersistence' => false,
            'rules' =>[
          
            ],
        ],
Не могу перейти на русскую (default) версию сайта, перебрасывает на предыдущий язык
с 302 статусом
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: codemix/yii2-localeurls

Сообщение Faenir »

Tivos писал(а): 2017.02.15, 13:12 Не могу перейти на русскую (default) версию сайта, перебрасывает на предыдущий язык
А как пытаетесь? "/ru" в адресной строке должно работать.
Tivos
Сообщения: 41
Зарегистрирован: 2015.08.12, 12:34

Re: codemix/yii2-localeurls

Сообщение Tivos »

если в конфигурации выставлено
'enableLanguagePersistence' => false,
то "/ru" (дефолтный) не нужно прописывать
.
при этом на некоторых ПК всё работает коректно, на других не работает дефолтный язык.
Аватара пользователя
Faenir
Сообщения: 292
Зарегистрирован: 2010.01.06, 01:46
Откуда: Симферополь

Re: codemix/yii2-localeurls

Сообщение Faenir »

Tivos писал(а): 2017.02.16, 11:18 если в конфигурации выставлено
'enableLanguagePersistence' => false,
то "/ru" (дефолтный) не нужно прописывать
.
при этом на некоторых ПК всё работает коректно, на других не работает дефолтный язык.
"/ru" нужно прописывать в любом случае, чтобы переключить язык, а потом оно уже перенаправит на страницу без языка в урл.
Экстрасенсов тут нет.
А как пытаетесь?
Tivos
Сообщения: 41
Зарегистрирован: 2015.08.12, 12:34

Re: codemix/yii2-localeurls

Сообщение Tivos »

решил проблему
'enableLanguageDetection' => false,
на ОС где по умолчанию стоит англ. язык и не передавать "ru" редиректит на англ. версию.
если выставить 'enableLanguageDetection' => false, не происходит определения языка ОС и всё норм работает
.
сейчас на сайте несколько языков и ссылки формируются так:
site.com/ - рус версия и не нужно передавать в ссылке "ru"
site.com/uk - укр
site.com/en - англ
Аватара пользователя
Maxim Glushko
Сообщения: 98
Зарегистрирован: 2017.04.24, 19:16
Откуда: Україна, Одеса

Re: codemix/yii2-localeurls

Сообщение Maxim Glushko »

В .htaccess можно добавить:

Код: Выделить всё

RewriteRule ^ua/(.*)$ /$1 [R=301,L]
RewriteRule ^ua$ / [R=301,L]
Извинения за некромантию.
Ответить