我一直面对这个错误很长一段时间,我的生产环境在Windows 2008 R2企业平台上运行Apache 2.4和php7。
我的错误日志中充满了这些行 VirtualAlloc()失败:[0x00000008]没有足够的存储空间可用于处理此命令。 VirtualFree()失败:[0x000001e7]尝试访问无效地址
经过一段时间后会导致500错误,之后我必须重新启动服务器才能正常运行一段时间。
请帮我解决这些问题我试图从php和wordpress结束更新内存但仍然没有帮助
答案 0 :(得分:0)
您的项目可能未在合适的体系结构上设置。
您的PHP是32位吗?检查PHP_INT_SIZE
常量以找出答案。
print_r(PHP_INT_SIZE); # 4 == 32bit // 8 == 64bit
Windows Server 2008 R2是x64操作系统,因此x86版本的Apache +/- x86 PHP可能会限制您可能已在计算机上安装并尝试分配的内存。在x86版本上,您将不能分配超过2G的内存。
答案 1 :(得分:0)
如果我出现此错误
composer update
当我尝试时它对我有用
composer install
答案 2 :(得分:0)
我遇到了同样的错误,此命令已在localhost上为我解决了问题
php -d memory_limit=-1 "C:/ProgramData/ComposerSetup/bin/composer.phar"
然后composer update
答案 3 :(得分:0)
只需更新最新版本的作曲家
https://getcomposer.org/download/
否则执行以下步骤
此设置仅在本地机器(命令)中
检查 PHP 内存
php -r "echo ini_get('memory_limit');"
输出:
128M
了解PHP路径
php --ini
输出:
Configuration File (php.ini) Path: C:\Windows
Loaded Configuration File: C:\xampp72\php\php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)
只需更新您的内存限制
; Maximum amount of memory a script may consume (128MB)
; http://php.net/memory-limit
memory_limit=512M
无限制内存访问
memory_limit=-1
或 只需为 Windows 运行
php -d memory_limit=-1 "C:\ProgramData\ComposerSetup\bin\composer.phar" update
注意: 我建议必须下载最新的作曲家版本
作曲家 -v
答案 4 :(得分:0)