У меня есть сайт, который я сделал многоязычным. Он основан на IP пользователя. Например, если пользователь находится в Китае, сайт откроется на китайском языке. В URL нет изменений.
Теперь я хочу, чтобы, если пользователь открыл сайт из Китая, то URL стал ch.example.com. Как я могу это сделать? Я использую Zend Framework. Я должен сделать это, чтобы Google мог сканировать китайскую версию на веб-сайте.
Я могу сделать это, создав подпапку, например example.com/ch, но я не хочу управлять сайтом в другой папке.
Что может быть лучшим способом сделать это.
Спасибо
Таким образом, предполагая, что вы сопоставляете все разные языковые субдомены с одним и тем же сервером и используете Apache, вы можете сделать следующее:
Создайте виртуальный хост Apache для каждого языкового субдомена. Каждый из этих виртуальных хостов должен указывать на один и тот же корневой каталог документов приложения Zend Framework.
Для каждого из этих виртуальных хостов вы можете создать переменную среды APPLICATION_LANGUAGE, которая задает значение соответствующего языка.
Затем вы можете проверить эту переменную среды в своем приложении Zend, чтобы переключить язык, переключая бизнес-логику.
Других решений пока нет …