45IT.COM- 电脑学习从此开始!
DIY硬件教程攒机经验装机配置
设计Photoshop网页设计特效
系统注册表DOS系统命令其它
存储主板显卡外设键鼠内存
维修显卡CPU内存打印机
WinXPVistaWin7unix/linux
CPU光驱电源/散热显示器其它
修技主板硬盘键鼠显示器光驱
办公ExcelWordPowerPointWPS
编程数据库CSS脚本PHP
网络局域网QQ服务器
软件网络系统图像安全
页面导航: 首页 > 设计学院 > 网络编程 > PHP教程 >

如何修改PHP网站程序中的最大内存

电脑软硬件应用网 45IT.COM 时间:2013-01-10 10:42 作者:佚名

在运行PHP程序,常会遇到“Fatal Error: Allowed memory size of xxxxxx bytes exhausted”的错误, 这意味着PHP脚本使用了过多的内存,超出了系统对其设置的允许最大值。要解决这个问题,首先需要查看你的程序是否分配了过多的内存,在程序没有问题的情况下,你可以通过以下介绍的方法来增加PHP的内存限制(memory_limit)。

 

首先要检查php的内存限制值,为了查看这个值,先要建立一个空的php文件,比如view-info.php,将下面这段代码粘贴到里面:

<?php phpinfo(); ?>

把这个脚本放到你的Web服务器上,然后在浏览器中调用它,这时会显示你的PHP环境配置的信息,其中有一部分是关于“memory_limit”的, 如附图一。当然你可以用这种方法来查看php的其他参数设置,而不仅仅是memory_limit。

 

memory_limit应该设为多少会比较合适呢?这个取决于你应用的要求,比如Wordpress需要32MB,Drupal 6则要求最小为16MB,推荐设置为32MB。如果你安装了不少的插件(plugins),尤其是进行图像处理的模块,那么你可能需要128MB或更高的内存。

 

设置memory_limit有以下几种方法:

 

方法1: php.ini,最简单常用的方法是修改php.ini

首先找到对你的网站生效的php.ini文件,到正确的配置文件,并进行更改是首先要做的一步。如果你用上面的方法来查看配置参数,则你可以找到“Loaded Configuration File”这一项。对于Linux用户,可以执行“php -i | grep Loaded Configuration File”来找到对应的配置文件,而对于Windows用户,则可以尝试修改你的php安装目录下的php.ini。然后在php.ini中,找到“memory_limit”这一项,如果没有,你可以在文件的尾部自己增加这个参数,例如:

memory_limit = 128M;

然后保存文件即可。最后别忘了重启web 服务器让修改生效,如果web服务器使用Apache, 可以执行:

httpd restart

注意如果你购买了虚拟主机服务,你的服务商可能会禁止你修改php.ini这个文件。

 

方法2: .htaccess

这种方法仅在php以Apache模块来执行时才有效,在网站的服务器的根目录下找到“.htaccess”文件,如果没有,可以自己创建一个。然后把以下配置放入其中:

php_value memory_limit 128M ;

可以将128M改为你想设置的值

 

方法3: 运行过程中修改php的内存设置

在你的php脚本中增加以下代码即可:

ini_set('memory_limit','128M');

不过如果你使用的是虚拟主机,有可能会出现memory_limit值修改失败的结果。这时需要联系你的服务商看如何处理,通常他们限制了可以设置的最大值或者根本就不允许你修改。如果他们的环境无法满足你的要求,那么你可能要考虑换一个主机服务商。

如何修改PHP网站程序中的最大内存

 

如何修改PHP网站程序中的最大内存
顶一下
(1)
50%
踩一下
(1)
50%
------分隔线----------------------------
无法在这个位置找到: baidushare.htm
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
验证码:点击我更换图片
推荐知识