у нас есть приложение Symfony 2.6.8, мы случайно получаем этот странный журнал ошибок:
[Thu Jun 11 12:29:14 2015] [error] [client 1.1.1.1] PHP Неустранимая ошибка: require (): Ошибка открытия требуется «aab» (include_path = '.: / Usr / share / php: / usr / share / pear ') в /data/apps/front/1.1.1/app/bootstrap.php.cache в строке 2752
Строка 2752 файла bootstrap.php.cache
:
if ($file = $this->findFile($class)) { require $file; // line 2752 return true; }
Метод findFile()
:
public function findFile($class) { if (false === $file = apc_fetch($this->prefix.$class)) { apc_store($this->prefix.$class, $file = $this->decorated->findFile($class)); } }
Дополнительная информация о конфигурации, которую мы используем:
Я не понимаю, что это за файл aab
. Мы используем автозагрузчик APC, поэтому я подозреваю, что APC имеет поврежденные записи, потому что при перезапуске Apache2 приложение работает как исключенное. Я не могу отлаживать, когда приложение находится в этом состоянии, потому что мы используем apc.stat = 0
поэтому php-файлы не перезагружаются при каждом запросе. Модификация бутстрапа не работает.
Возможно, наши настройки APC не адаптированы:
apc.cache_by_default => On => On apc.canonicalize => On => On apc.coredump_unmap => Off => Off apc.enable_cli => Off => Off apc.enabled => On => On apc.file_md5 => Off => Off apc.file_update_protection => 2 => 2 apc.filters => no value => no value apc.gc_ttl => 3600 => 3600 apc.include_once_override => Off => Off apc.lazy_classes => Off => Off apc.lazy_functions => Off => Off apc.max_file_size => 1M => 1M apc.mmap_file_mask => no value => no value apc.num_files_hint => 1000 => 1000 apc.preload_path => no value => no value apc.report_autofilter => Off => Off apc.rfc1867 => Off => Off apc.rfc1867_freq => 0 => 0 apc.rfc1867_name => APC_UPLOAD_PROGRESS => APC_UPLOAD_PROGRESS apc.rfc1867_prefix => upload_ => upload_ apc.rfc1867_ttl => 3600 => 3600 apc.serializer => default => default apc.shm_segments => 1 => 1 apc.shm_size => 128M => 128M apc.shm_strings_buffer => 4M => 4M apc.slam_defense => On => On apc.stat => Off => Off apc.stat_ctime => Off => Off apc.ttl => 0 => 0 apc.use_request_time => On => On apc.user_entries_hint => 4096 => 4096 apc.user_ttl => 0 => 0 apc.write_lock => On => On
Любой намек приветствуется!
Как объясняется в этом вопросе, это точно такая же проблема: «Вызов неопределенного метода» после перезагрузки apache с использованием кеша opcode apc .
Ошибка возникает из-за перезагрузки Apache2 для поворота журнала.
Удаление ApcAutoloder
решило проблему.