PHP gettext и vagrant работают под управлением Ubuntu

У меня проблема с получением gettext для перевода одного из моих файлов перевода на моей установке Vagrant, работающей под управлением Ubuntu. Мои файлы локали находятся в каталоге, как ...

locales\de_DE\LC_MESSAGES\default.po

Я уверен, что с файлами перевода все в порядке, так как у меня есть локальная версия xampp, указывающая на точно такой же файл, и она работает нормально.

Я попробовал следующее и почти просто хочу выяснить, что происходит, потому что я так долго смотрел на это

Разрешения - я могу вывести содержимое файла default.mo на веб-страницеВключил локали в "/etc/locale.gen", запустил "locale-gen" и перезапустил apache

Есть ли что-то, что я мог пропустить?

<?php

define('LOCALES_DIR', "../locales");

if (! file_exists(LOCALES_DIR)) {
    exit("Locales not found from here");
}

$content = file_get_contents(LOCALES_DIR . "/de_DE/LC_MESSAGES/default.mo");
if (strlen($content) < 1) {
    exit("File could not be read");
}

$language = "de_DE.UTF-8";
putenv('LANG=' . $language);
setlocale(LC_ALL, $language);

$domain = "default";
bindtextdomain($domain, LOCALES_DIR);
textdomain($domain);
bind_textdomain_codeset($domain, 'UTF-8');

echo _("Sign In");

Обновления

По какой-то причине он теперь частично прерывистый, при 3-м обновлении он будет отображать правильный текст.Мои версии PHP немного отличаютсяБродяга: 5.4.42местный: 5.4.7Не уверен, поможет ли это, но php_sapi_name () на vagrant был "fpm-fcgi", а на локальном - "apache2handler", просто предположил, что не уверен на 100% в разнице, но может объяснить, почему перезапуска Apache на vagrant было недостаточно

Ответы на вопрос(1)

Ваш ответ на вопрос