php.ini中改了,还是出现这个问题(当然了,我的路径中式存在这个扩展的)httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.2.101 for ServerName
PHP Warning:  PHP Startup: Unable to load dynamic library 'd:/server/php/ext\\php_curl.dll' - \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3\r\n in Unknown on line 0
[Thu Aug 16 22:36:43 2012] [notice] Apache/2.2.19 (Win64) PHP/5.2.5 (x64) configured -- resuming normal operations
[Thu Aug 16 22:36:43 2012] [notice] Server built: May 28 2011 15:18:56
[Thu Aug 16 22:36:43 2012] [notice] Parent: Created child process 10324
httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.2.101 for ServerName
httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.2.101 for ServerName
PHP Warning:  PHP Startup: Unable to load dynamic library 'd:/server/php/ext\\php_curl.dll' - \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3\r\n in Unknown on line 0
[Thu Aug 16 22:36:43 2012] [notice] Child 10324: Child process is running
[Thu Aug 16 22:36:43 2012] [notice] Child 10324: Acquired the start mutex.
[Thu Aug 16 22:36:43 2012] [notice] Child 10324: Starting 64 worker threads.
[Thu Aug 16 22:36:43 2012] [notice] Child 10324: Starting thread to listen on port 80.
如果我把依赖扩展在apache配置文件中加载的话apache会启动不了(apache配置中预加载mysql的依赖没问题)这个是我用x64的apache和x64的php遇到的问题,求遇到过的指点迷津

解决方案 »

  1.   

    \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3
    是GBK编码的字符 未找到指定模块
    你需要确定有 'd:/server/php/ext\\php_curl.dll' 这个文件。
    windows的文件系统我不清楚,因此我也不确定 /ext\\php_curl.dll 是否会被正确理解.
    你可以在php.ini中配置extension_dir='d:\\server\\php\\ext' 看看
      

  2.   

    拷贝PHP目录中的libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll文件到 system32配置好 extension_dir ,去掉 extension = php_curl.dll 前面的分号.
      

  3.   

    把依赖扩展在apache配置文件中加载的话apache会启动不了
    这话是什么意思?难道php扩展不是通过 php.ini 加载吗?在 x86 情况下,设置了 PHPIniDir 就一切ok了,x64下也应该是一样的
    你还可以尝试在系统的环境变量PATH上附加php安装路径
    万不得已时才考虑复制文件你的64位的程序都是在哪里下载的,官网上似乎并没有
      

  4.   


    LoadModule php5_module "d:/Server/php/php5apache2_2.dll" 
    AddType application/x-httpd-php .php         
    PHPIniDir "d:/server/php"
    LoadFile d:/server/php/libeay32.dll 
    LoadFile d:/server/php/ssleay32.dll 如此就可以不用吧桑面这两个dll拷贝到system中去了,但是这次我是用64的系统64位的apache64位的php就会出现这个错误,而且所有类库均是存在的
      

  5.   

    补充一下,mysql我在ini中开启了,也是无法加载,我把libmysql.dll依赖用LoadFiled d:/server/php/libmysql.dll方式加载就好了,针对这个有两个疑问:1、为什么有的php不需要格外加载依赖,有的却需要加载呢?
    2、用如此你刚发加载curl扩展为什么不行呢,我在32位windows上这样加载curl依赖完全没有问题,是兼容性问题吗?可是这个apache和php本事就是针对win64弄出来的。
      

  6.   

    先不说动态链接库是否能找到的问题,只要在系统搜索路径(PATH)中就能找到的你依然还是
    LoadFile d:/server/php/libeay32.dll  
    LoadFile d:/server/php/ssleay32.dll  
    吗?应该是 64 吧?php 都 64 了,如何能找到 32 位 dll 的入口?