APACHE/IIS在PHP5安装之后,经常导致依赖于其他dll才能工作的扩展无法正常加载这些dll,出现加载扩展出 错,本文将介绍解决方法。Q: php_mysql.dll为例,php_mysql依赖libmysql.dll,文件都在extension_dir的路径中,为什么apache就是说找不到? A: 由于PHP5改变文件的位置了,而多数是用.zip发布,所以造成无法复制很多dll到正确路径中去,造成httpd无法调用这些backend dll。 解决的办法有两个: 1 将这些依赖的dll拷贝到%windir%\system32下 2 或者将PHP5的安装目录添加到%PATH%中。(有人说能行,我这就没成功过)
Q: 那些dll调用其它的dll,需要被复制到%system32%,或者%path%中去? A: Php5官方网站有个列表,好早以前我找过,这里做个list
php_curl.dll CURL, Client URL library functions Requires: libeay32.dll, ssleay32.dll (bundled) php_domxml.dll DOM XML functions PHP <= 4.2.0 requires: libxml2.dll (bundled) PHP >= 4.3.0 requires: iconv.dll (bundled) php_fdf.dll FDF: Forms Data Format functions. Requires: fdftk.dll gnu_gettext.dll (bundled), PHP >= 4.2.3 requires libintl-1.dll, php_iconv.dll ICONV characterset conversion Requires: iconv-1.3.dll php_ingres.dll Ingres II functions Requires: Ingres II libraries php_interbase.dll InterBase functions Requires: gds32.dll (bundled) php_java.dll Java functions PHP <= 4.0.6 requires: jvm.dll (bundled) php_ldap.dll LDAP functions PHP <= 4.2.0 requires libsasl.dll(bundled), PHP >= 4.3.0 requires libeay32.dll,ssleay32.dll (bundled) php_mcrypt.dll Mcrypt Encryption functions Requires: libmcrypt.dll php_mhash.dll Mhash functions PHP >= 4.3.0 requires: libmhash.dll (bundled) php_mcrypt.dll Mcrypt Encryption functions Requires: libmcrypt.dll php_mhash.dll Mhash functions PHP >= 4.3.0 requires: libmhash.dll (bundled) php_msql.dll mSQL functions Requires: msql.dll (bundled) php_mssql.dll MSSQL functions Requires: ntwdblib.dll (bundled) php_mysql.dll MySQL functions PHP >= 5.0.0, requires libmysql.dll (bundled) php_mysqli.dll MySQLi functions PHP >= 5.0.0, requires libmysqli.dll (bundled) php_oci8.dll Oracle 8 functions Requires: Oracle 8.1+ client libraries php_openssl.dll OpenSSL functions Requires: libeay32.dll (bundled) php_oracle.dll Oracle functions Requires: Oracle 7 client libraries php_sybase_ct.dll Sybase functions Requires: Sybase client libraries php_xmlrpc.dll XML-RPC functions PHP >= 4.2.1 requires: iconv.dll (bundled) php_xslt.dll XSLT functions PHP <= 4.2.0 requires sablot.dll, expat.dll (bundled). PHP >= 4.2.1 requires sablot.dll, expat.dll, iconv.dll (bundled).
|