我已经解决了这个问题,但是我会把它发布在这里供将来参考,也许它会帮助别人:)
问题:
从命令行运行PHP与自定义php.ini后Apache崩溃并抛出此错误apc_fcntl_lock failed errno:6
。
我的configuration:
我已经安装了PHP 5.3.8和APC easyPHP。
APC对easyPHP(Apache服务器)运行的应用程序工作正常。
我正在使用Symfony2框架,它出来了很好的代码生成器从命令行运行,例如: php app/console doctrine:database:create
连接到MySQL,并为我创build一个数据库。
要运行这些命令,我需要启用pdo_mysql扩展。 由于PHP CLI默认情况下没有启用pdo_mysql我已经将我的php.ini复制到C:\Windows\php.ini
(这是PHP CLI寻找php.ini的地方)。
但是我有很多其他的扩展(如php_intl或php_curl,php_gd2,…)和php_apc其中。
解决方案:
我的symfony2应用程序由easyPHP运行,它加载了C:\easyPHP\conf_files\php.ini
(这是我的php.ini for easyPHP apache服务器),并且我离开了php_apc。
对我来说,解决方法是禁用 C:\Windows\php.ini
php_apc(这是我的php.ini,用于PHP CLI [命令行界面])。
这样 – symfony2可以使用APC运行得更快,而且我可以使用命令行生成代码,而无需每次都重新启动Apache。