我刚将一个站点从
Linux转移到Windows,我收到了奇怪的致命错误消息.
我的Linux PHP有256MB的内存限制,从来没有一个“内存不足”的致命错误.
我的Linux PHP有256MB的内存限制,从来没有一个“内存不足”的致命错误.
现在在IIS上我有相同的内存限制,但我收到太多
PHP Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 32508940 bytes) in C:\...\functions.PHP on line 0
我试图增加(400MB)看看会发生什么,这就是我得到的
PHP Fatal error: Allowed memory size of 419430400 bytes exhausted (tried to allocate 65013862 bytes) in C:\....\dbfunctions.PHP on line 1073741824
奇怪,它是相同的应用程序,相同的内存限制设置..
同样奇怪的是,第二个错误显示“在线1073741824”,但哇,该文件有500行.
这是Windows / IIS / PHP问题吗?
适用于PHP的Windows缓存扩展
似乎有很多问题围绕着PHP的Windows缓存扩展,它为PHP设置了硬内存限制.
有一些示例和博客文章删除wincache解决了这个问题,但这可能会对网站的性能产生不利影响.
An Example of issues related to wincache that sound similar
在IIS中管理PHP内存
> PHP.ini – 位于根文件夹中.在TextPad中编辑并更改momory_limit的值.如果4M不够高达8M等
>在admin.PHP中(如果你的错误在这里)在ini_set’memory_limit’之后添加内存限制行,’12M’如果你想要添加12MB内存
>您可以在.htaccess中添加一行:PHP_value memory_limit 32M
> wp-config.php可以控制内存.你在这里放了一条线
define(‘WP_MEMORY_LIMIT’,’32M’);
信息来自PHPbb.com和technet.microsoft.com