docker nginx php-fpm file_get_contents не работает - PullRequest
0 голосов
/ 11 июня 2019

Я запускаю композицию из двух образов докера (nginx и php-fpm). Оба работают совершенно нормально, и я могу открыть свой пример веб-сайта, но я получаю одну ошибку при использовании file_get_contents в PHP:

Warning: file_get_contents(/data/nav.json): failed to open stream: No such file or directory in /var/www/localhost/partials/header.php on line 3

Мой nginx указывает на /var/www/localhost, а папка data находится в корне. Относительные URI, такие как data/nav.json в моем index.php, работают так же, как и полные URL-адреса других сайтов.

Полный исходный код доступен здесь: https://github.com/muuvmuuv/webserver

Я также открыл проблему на GitHub из Docker PHP: https://github.com/docker-library/php/issues/836

Я хотел бы знать, вызвано ли это nginx или php-fpm и почему не работают абсолютные URL.

1 Ответ

1 голос
/ 12 июня 2019

Я думаю, что эта часть из вашего кода неправильная

$url = "/data/nav.json";

вы ищете файл в неправильном каталоге.

Это изменение сработало для меня

$url = __DIR__ . "/../data/nav.json";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...