我们希望迁移'我们的项目使用opcache而不是apc。我们怎么做到这一点?
在我们的VPS上,我们安装了带有opcache.enable => On
的php 5.6,但是,我们的资产不会加载,Doctrine会在日志文件中显示多个错误。 (因为Doctrine仍然试图调用ApcCache)
2015/02/16 15:22:21 [错误] 22231#0:* 29515 FastCGI在stderr中发送:" PHP消息:PHP致命错误:调用未定义的函数Doctrine \ Common \ Cache \ apc_fetch( )在第40行和第34行的 snip_path /vendor/doctrine/cache/lib/Doctrine/Common/Cache/ApcCache.php中;从上游读取响应头时,客户端: snip_ip ,服务器: snip_server ,请求:" GET /app_dev.php/js/57b7149_part_1_templates_2.js HTTP / 1.1& #34;,upstream:" fastcgi:// unix:/var/run/php_fpm_cynex.sock:",host:" snip_host ",referrer :" snip_referer "
答案 0 :(得分:1)
你可能正在使用apc和doctine orm,请检查app / config / config.yml
doctrine:
orm:
...
metadata_cache_driver: apc
...
如果您正在使用它,则需要取消它,清除缓存并尝试。
希望这可以帮助你。
答案 1 :(得分:0)
Doctrine正试图使用可能在您的VPS中关闭的APC缓存驱动程序。
答案 2 :(得分:0)
虽然我不熟悉Doctrine,但问题似乎是Doctrine表现得像安装了APC,显然它不是
PHP致命错误:调用未定义的函数Doctrine \ Common \ Cache \ apc_fetch()
显然,Doctrine希望以it's not designed to perform
的方式控制OpcachePHP的OpCache不是一个完整的缓存,因为它是一个简单的操作码缓存。