Apache Web Server Suddenly Fails to Load With EMalloc Error - Solution (php_exif.dll)
By Angsuman Chakraborty, Gaea News NetworkThursday, June 1, 2006
The common symptom of the problem is that Apache web server suddenly fails to load as a service (on windows) or even from command line. The error message from log is as follows:
FATAL: emalloc(): Unable to allocate -2103443420 bytes
[Thu Jun 01 23:57:21 2006] [crit] master_main: create child process failed. Exiting.
In my case the solution was simple. All I had to do was comment out php_exif extension!
;extension=php_exif.dll
The single semi-colon made all the difference!
Explanation:
php_exif.dll requires php_mbstring.dll extension to be enabled. Also php_mbstring.dll must be enabled before php_exif.dll. Failure to do so prevents Apache web server from loading on windows. Unfortunately that is not the default order. In recommended php.ini sample php_exif is loaded earlier resulting in mayhem if you ever decide to enable php_exif.
Hope that helps.