the registry changes to test if this was the fix that did it: you may need a reboot (not just a service restart) because of some rather irritating persistencies. If you get errors like this: PHP Notice: Constant XML_ELEMENT_NODE already defined in Unknown on line 0 And many more complaining about XML constants, comment out the line: extension=php_domxml.dll in your php.ini. That extension seems to be compiled into PHP when you get those errors or something else is including the functionality before that dll. ...didn't export the $PATH change such that restarting the Apache service (in MMC) would pick it up.  So I tested the working solution (adding PHP dir to $PATH), but it failed because of HOW I set it. It succeeded only when I REBOOTED after changing the $PATH.  There may be an easier way that this, but I do not know it at present. == Comment Consider whether PHP dir should need to be in $PATH at all, when PHP.exe apparently was found and executes php pages in Apache, but php5apache2_2.dll failed to find whatever was needed to load the extensions.  This should perhaps be addressed. Note that on a WAMP installation (W2K,Apache,MySQL,PHP), only PHP is required in $PATH. PHP Warning:  PHP Startup: Unable to load dynamic library 'c:\\php\\ext\\php_mysql.dll' - The specified module could not be found.\r\n in Unknown on line 0 When PHP definitely should be able to find the module, it's fairly common knowledge that this error can also be caused by  certain dlls not