原始安装是在具有PHP 5.5.9和CakePHP 5.4.1的Ubuntu 14.04上进行的。在使用PHP 7.0.30迁移到Ubuntu 16.04之后,我主要通过交换lib文件夹将CakePHP更新为2.10.4。一切都可以在Web界面中正常运行,甚至是应用程序占用内存的任务。 但是CLI坏了。每次对“ app / Console / cake”的调用都会引发“ PHP致命错误”。
root@watt18:/var/www_external/app# Console/cake bake
PHP Fatal error: Allowed memory size of 2097152 bytes exhausted (tried to allocate 8192 bytes) in /var/www_external/lib/Cake/Console/ConsoleOptionParser.php on line 510
PHP Fatal error: Allowed memory size of 2097152 bytes exhausted (tried to allocate 32768 bytes) in /var/www_external/lib/Cake/I18n/I18n.php on line 1
“ in”部分在呼叫之间变化。在网上搜索,我找不到任何可比较的主题。我检查了“ app”内所有文件夹的权限,但未发现与原始安装有任何区别。我尝试调试,但还不能走很远。到Console / cake.php中的return ShellDispatcher::run($argv);
行,一切都很好。
从全新下载的原始cakephp文件夹中拨打电话时,我得到相同的结果。
我不知道所有内存都在哪里丢失。对于可能导致问题的原因或如何继续进行调试的任何提示,我都会感到高兴。
答案 0 :(得分:0)
在php.ini中设置memory_limit = -1
但这不是一个好的解决方案,您可能在某处内存泄漏
请仔细检查您的语句,特别是在存在大量内存使用的循环的情况下