Ok, I have a working copy of PHP 4.3.10 running on Windows 2003 Server (IIS 6.0). Everything inside the basic PHP works fine.
The problem is that the only extension I can get to load correctly is the GD library.
My Extension path is set to the following:
; Directory in which the loadable extensions (modules) reside.
extension_dir = "./"
If I go into my c:\windows\php.ini file, I see the list of commented extensions like below:
;Windows Extensions
;Note that MySQL and ODBC support is now built in, so no dll is needed for it.
;
;extension=php_bz2.dll
;extension=php_cpdf.dll
;extension=php_crack.dll
;extension=php_curl.dll
;extension=php_db.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_dbx.dll
;extension=php_domxml.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_hyperwave.dll
;extension=php_iconv.dll
;extension=php_ifx.dll
;extension=php_iisfunc.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_java.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_mssql.dll
;extension=php_msql.dll
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_oracle.dll
;extension=php_pdf.dll
;extension=php_pgsql.dll
;extension=php_printer.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_sockets.dll
;extension=php_sybase_ct.dll
;extension=php_w32api.dll
;extension=php_xmlrpc.dll
;extension=php_xslt.dll
;extension=php_yaz.dll
;extension=php_zip.dll
If you notice, the only one that is NOT commented is php_gd2.dll. I have the .dll file in the c:\windows\system32 folder and it works great.
The Problem
I try to uncomment another one, like curl or pdf, copy the appropriate dll file from the c:\php\extensions\ directory to the c:\windows\system32 directory (where the php_gd2.dll is located) and restart IIS. After doing this PHP no longer works. I have to go back to the php.ini file and disable the extension to get php to function normally again.
To sumarize, for any other extension besides php_gd2.dll that I uncomment and copy the appropriate .dll file to the system32 directory, PHP will not restart when I reboot IIS. The only one that works is GD2. I have tried copying the DLL to the base c:\php directory, the c:\windows directory, the c:\windows\system32 directory, and nothing works. I don't know what I'm doing wrong, whats the difference between GD2 and the rest of the extensions? Is there some additional step that I'm not taking?
This is driving me nuts, can anyone help?