2016-10-04 55 views
0

我正尝试在新服务器上安装来自不同服务器的concrete5版本。混凝土内存泄漏5

当我复制配置和数据库加载一段时间,然后引发错误500. PHP错误日志告诉我,这是一个内存限制问题。

我已经将内存限制设置为2GB,并且它仍然达到了极限。我启用了xdebug并检查了什么是问题。看起来好像一些递归函数一遍又一遍地被调用。这里是堆栈跟踪的一个片段:

[04-Oct-2016 21:10:47 Asia/Kuwait] PHP Stack trace: 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 1. {main}() C:\inetpub\wwwroot\tce\index.php:0 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 2. require() C:\inetpub\wwwroot\tce\index.php:2 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 3. require() C:\inetpub\wwwroot\tce\concrete\dispatcher.php:94 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 4. Concrete5_Library_Localization::init() C:\inetpub\wwwroot\tce\concrete\config\localization.php:41 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 5. Concrete5_Library_Localization::getInstance() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:8 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 6. Concrete5_Library_Localization->__construct() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:17 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 7. Concrete5_Library_Localization->setLocale() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:62 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 8. Concrete5_Library_Loader->package() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:117 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 9. t() C:\inetpub\wwwroot\tce\concrete\core\libraries\loader.php:334 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 10. Concrete5_Library_Localization::getTranslate() C:\inetpub\wwwroot\tce\concrete\startup\localization.php:12 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 11. Concrete5_Library_Localization::getInstance() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:159 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 12. Concrete5_Library_Localization->__construct() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:17 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 13. Concrete5_Library_Localization->setLocale() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:62 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 14. Concrete5_Library_Loader->package() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:117 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 15. t() C:\inetpub\wwwroot\tce\concrete\core\libraries\loader.php:334 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 16. Concrete5_Library_Localization::getTranslate() C:\inetpub\wwwroot\tce\concrete\startup\localization.php:12 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 17. Concrete5_Library_Localization::getInstance() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:159 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 18. Concrete5_Library_Localization->__construct() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:17 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 19. Concrete5_Library_Localization->setLocale() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:62 
[04-Oct-2016 21:10:47 Asia/Kuwait] PHP 20. Concrete5_Library_Loader->package() C:\inetpub\wwwroot\tce\concrete\core\libraries\localization.php:117 

有人可以说这可能是什么问题?

回答

0

由于这个问题也让我失去了几个小时,所以我会在一年后回复它,让Google的同伴们看到。

我无法找到解决方案。所以:问题是缺少/ package /文件夹中的文件。这导致本地化一遍又一遍地搜索这个软件包。它的递归永远。

问题不在于不同的服务器,也不是另一个PHP版本,因为我最终发现了 - 只是一些丢失的文件。这就是为什么当你将语言环境改为en_US时它会工作 - 译者不会运行。

+1

我可以证实,这个问题是由包tgat已经被删除而没有从concrete5中卸载它们引起的。 Remo最近在concrete5-legacy的master分支上修复了这个问题:请参阅https://github.com/concrete5/concrete5-legacy/pull/1956 –

+0

实际上,我之前已经卸载了该软件包,但它不起作用。但很高兴知道,thx michele - 特别是所有翻译工作:) – Nukey