Все языковые версии находятся на домене site.com а текущий язык пользователя берем из куки, куда он заносится либо из предпочитаемого языка браузера, либо осознанным выбором пользователя.
Выбор пользователя — это ссылки site.com/fr/, site.com/en/ и т.д. обработчик которых всего лишь устанавливает куку и редиректит либо на реферера (если он в пределах вашего сайта), либо на главную страницу вашего сайта. Соответственно, все надписи на сайте выводятся спец. функцией, аргументом которой является ярлык — короткое, но понятное описание строки, за ним скрывающейся, например T('PLEASE_LOGIN') выводит надпись «Пожалуйста, зарегистрируйтесь» на нужном языке, все метки и их переводы на все языки хранятся в одном месте.
Такой вариант вас не устраивает?