Я работал на интернационализированных сайтах до этого года. Мы всегда получали советы от SEO-гуру, чтобы различать язык по URL - так, www.example.com/en и www.example.com/de.
Я думаю, что это также лучше для пользователей; если я добавлю страницу в закладки на немецком языке, то когда я вернусь к ней, я получу страницу на немецком языке, даже если срок действия моих файлов cookie истек. Точно так же я могу делать такие вещи, как публиковать URL на Facebook, и пусть мои немецкоязычные друзья нажимают на него и получают сайт на немецком языке.
Обратите внимание, что если ваш сайт обслуживает несколько стран, вы должны обрабатывать их вместе с языком, поэтому у вас могут быть example.com/de-DE, example.com/en-GB, example.com/en-IE и т. Д. .
Однако это не должно включать дублирование. Вместо этого вы должны настроить приложение на обработку URL-адреса, извлечь информацию о локали и затем перенаправить запрос внутренне на независимую от локали страницу. Итак, запрос example.com/de-DE/info и запрос example.com/en-IE/info должны быть оба переданы в /info.jsp (или я предполагаю, что info.php в вашем случае). Затем эту страницу следует кодировать для выдачи текста на соответствующем языке, используя механизм локализации на уровне страницы.
Все немного сложнее, если вы хотите, чтобы сами URL-адреса были локализованы (например, example.org/de-DE/anmelden vs example.org/en-IE/sign-in). Однако применяется тот же принцип: извлеките локаль, а затем перешли на общую страницу. Разница в том, что должно быть больше изощренности в выяснении того, что это за страница по URL; вам понадобится сопоставление естественного языка в URL-адресе с именем файла страницы.