2015-06-11 36 views
1

我們有一個Symfony的2.6.8應用程序,我們隨機得到這個奇怪的錯誤日誌:Symfony2的bootstrap.php.cache嘗試包括不存在的文件

[Thu Jun 11 12:29:14 2015] [error] [client 1.1.1.1] PHP Fatal error: require(): Failed opening required 'aab' (include_path='.:/usr/share/php:/usr/share/pear') in /data/apps/front/1.1.1/app/bootstrap.php.cache on line 2752

線的bootstrap.php.cache 2752是:

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)); 
    } 
} 

其他配置INF ormations,我們使用:

  • 的Symfony 2.6.8
  • PHP 5.4.41
  • APC 3.1.13

我不明白什麼是要求這個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 

任何暗示將受到歡迎!

+0

您是否嘗試通過控制檯重新生成引導程序? – Med

+0

什麼版本的PHP?你有沒有考慮過使用opcache呢? – Machavity

+0

已添加附加信息。 ;)好的opcache似乎只適用於PHP 5.5。 – COil

回答