Docker Symfony Вы должны включить opcache.load_comments = 1 - PullRequest
0 голосов
/ 29 августа 2018

Некоторое время назад я попал в один старый проект. Я пытаюсь использовать докер с ним, но когда я прихожу к localhost, я получаю эту ошибку:

php.EMERGENCY: Uncaught Exception: You have to enable opcache.load_comments=1 or zend_optimizerplus.load_comments=1

Я пытался отгадать эту проблему, но не смог найти ответ, возможно, у кого-то из вас была эта проблема раньше ... Я сгенерировал Dockerfile из phpdocker.io/generator Вот мой Dockerfile:

FROM phpdockerio/php71-fpm:latest
WORKDIR "/application"

ARG DEBIAN_FRONTEND=noninteractive

RUN apt-get update \
    && apt-get install pcre-dev -y \
    && apt-get install libpcre3-dev -y \
    && apt-get -y --no-install-recommends install  php7.1-mysql php7.1-gd \
    && apt-get clean; rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*

1 Ответ

0 голосов
/ 29 августа 2018

opcache.load_comments директива влияния как Zend VM
обрабатывать узлы комментариев. Начиная с PHP 7.0.0 он удален. Больше информации о директиве: http://php.net/manual/en/opcache.configuration.php#ini.opcache.load-comments.

Также см .: http://php.net/ChangeLog-7.php «Секция OpCache»

Исправлена ​​ошибка # 70022 (сбой при использовании opcache с использованием opcache.file_cache_only = 1). Удалена директива конфигурации opcache.load_comments. Сейчас док загрузка комментариев ничего не стоит и всегда включена.

Ваши пути:

  • использовать php меньше 7.0.0 (например, 5-fpm версия https://hub.docker.com/_/php/)
  • refactor legacy, возможно, ваш код содержит что-то вроде ini_get() http://php.net/manual/ru/function.ini-get.php и вы можете найти обходное решение и избегайте использования этого аспекта.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...