我目前已在php-fpm下安装并运行apc。 apc info页面反映了用户缓存条目,但文件缓存反映了缓存的0个文件。其他类似的线程声明,如果在FCGI下运行,apc将不会共享工作进程之间的缓存,并建议使用php-fpm。我与这些人分享symtoms,但是我已经在使用php-fpm了,它运行正常。如果有人在这里有任何想法,将会非常感兴趣。现在被困在工作上几个小时了。我有另一个盒子设置它正在工作,我相信我遵循相同的程序,两个盒子是相同的。不知道我哪里出错了。我很乐意提供更多信息。谢谢。
更新:使用debug编译APC时,每个文件都会出现文件太大的错误。在工作箱上不是这种情况。通过源代码,我找到了相关的代码段 -
if(APCG(max_file_size) < fileinfo->st_buf.sb.st_size) {
apc_debug("File is too big %s (%d - %ld) - bailing\n" TSRMLS_CC, filename,t,fileinfo->st_buf.sb.st_size);
goto cleanup;
}
它在fileinfo strut中有正确的文件大小,所以我想象max_file_size搞砸了。我打算尝试跟踪它。任何人都有任何想法?这在EC2之外的64位Ubuntu上工作正常,具有相同的配置和文件。
来自源代码的所有构建测试都失败了,并且对该值进行硬编码没有帮助,它仍然没有缓存。