在我继承的代码库中,有一行在显示错误页面之前编码错误消息。
$sErrorMessageCrypted = wordwrap(base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($sKey), $sMessage, MCRYPT_MODE_CBC, md5(md5($sKey)))), 60, PHP_EOL, true);
错误是PHP致命错误:允许的内存大小为134217728字节耗尽(尝试分配81个字节)。
它作为输入接收的错误消息是1674个字符长,带有23个字符的盐。
所以,我想知道这里的过程以及为什么这会占用如此多的内存。我认为这样就可以显示错误而没有任何人能够阅读它。 (虽然我看到以前的开发人员无法使用解密功能。)
有关更改此内容的任何建议吗?
由于
答案 0 :(得分:0)
我的猜测是,拉入OpenSSL加密库可以推动你超过128MB的限制。增加内存限制是最简单的修复。如果你不能这样做,你可以重建库并消除不需要的密码以减小大小。