我使用PHP MySQLi Database Class并在我的本地计算机上一切正常运行。但是,当我将项目上传到主机时,出现以下错误:
Fatal error: Allowed memory size of 52428800 bytes exhausted (tried to allocate 50331646 bytes) in /usr/home/data/site/public_html/classes/MysqliDb.php on line 678
MysqliDB.php
的行 678 包含以下命令:
call_user_func_array(array($stmt, 'bind_result')`, $parameters);
当我在php_value memory_limit 64M
文件中输入.htaccess
时,我收到此错误:
[Fri May 30 11:03:18 2014] [alert] [client 37.98.159.18] /usr/home/data/site/public_html/.htaccess: Invalid command 'php_value', perhaps misspelled or defined by a module not included in the server configuration, referer: http://site.org/index.php
答案 0 :(得分:3)
答案 1 :(得分:-1)
原因是因为PHP耗尽了配置值memory_limit设置的最大内存限制。
通常,此PHP配置值的默认值非常低,为8MB或16MB。
因此,增加服务器php.ini配置文件中的memory_limit。您可以根据需要将此值从64MB更改为256M或512MB(越小越好)。
php.ini
文件中的配置
memory_limit = 128M
max_execution_time = 19000
另一种选择是通过.htaccess file
增加它来解决此问题。
因此应如下所示:
php_value memory_limit 128M
php_value max_execution_time 19000