Я разрабатываю веб-сайт, который использует gettext. Все отлично работает на местном уровне. Но сегодня я загружаю свой веб-сайт на своем производственном сервере, и gettext больше не хочет работать. Язык, который я хотел бы использовать, – fr_FR и en_US. gettext переводит мой текст, если я показываю свой веб-сайт на французском, но ничего не происходит для английского.
Когда я выполняю locale -a на моем сервере debian, я получаю:
C fr_FR.utf8 POSIX
Я французский, поэтому я думаю, что все нормально. Но когда я это делаю: locale-gen en_US или locale-gen en_US.UTF-8, а затем locale -a снова, ничего не меняется. ! Это нормально?
Вот пример кода PHP на всякий случай. Но поскольку gettext работает для французского языка, я считаю, что проблемы здесь нет.
$langage = 'en_US.utf8'; putenv("LC_ALL=$langage"); setlocale(LC_ALL, $langage); $languageFileName = "default"; // locale/en_US/LC_MESSAGES/default.mo bindtextdomain($languageFileName, PATH.'/locale'); bind_textdomain_codeset($languageFileName, 'UTF-8'); textdomain($languageFileName);
Большое спасибо за помощь.