找回密码
 立即注册
搜索
查看: 390|回复: 1

[L/WNAMP] Call to undefined function curl_init() on win7 64bit with php5.6

[复制链接]
发表于 2024-2-10 15:08 | 显示全部楼层 |阅读模式

前些日子把XP的系统换成win7,之前运行一直好好的PHP5.4,突然运行不起来curl_init了, 什么毛病么。

我发现把 LoadFile "F:/php_setup/php-5.6.12/libssh2.dll" 加入到apache的配置文件中,居然正常了。毛病呀



一直用的PHP5.4挺好用的,后来线上扩容,部分生产环境全部换上了PHP5.6,接着,一些高手写了一些高级的PHP语法,结果我一更新下来,出现500错误,查了一下错误:Can't use function return value in write context。真是晕倒,只能升级自个的PHP环境了。

 

 兴冲冲的把PHP5.6下载下来,结果一切换PHP的目录,傻了,居然报:Call to undefined function curl_init()错误,我的天呐,哥明明打开了php_curl.dll呀,为啥报这么奇葩的错误。

 

经过疯狂的搜索,有人说把下面四个文件复制到system32下,也有人复制两个到syswom什么目录下,结果重启apache好几次也不起作用,中间还把哥的wamp(php5.4)的环境给搞得不能用了。真是折腾呀。 

 

经过最终的测试,下面这段配置,就可以正常跑PHP5.6了。

 

LoadModule php5_module "F:/php_setup/php-5.6.12/php5apache2_4.dll"

PHPIniDir "F:/php_setup/php-5.6.12/"
#LoadFile "F:/php_setup/php-5.6.12/libeay32.dll"
#LoadFile "F:/php_setup/php-5.6.12/ssleay32.dll"
#LoadFile "F:/php_setup/php-5.6.12/php5ts.dll"
LoadFile "F:/php_setup/php-5.6.12/libssh2.dll"
 



现在2024年来看,这种方式确实太古老了。以后不要再用这种方式加载php了!!!
 楼主| 发表于 2024-12-13 21:13 | 显示全部楼层
楼主,用的方法是apache比较古老的方法Mod php方式,现代早就不流行了,phpStuday高级版本已经可以不同站点使用不同版本的php了。show一段apache+php-nts的代码:
<VirtualHost *:80>
    DocumentRoot "E:\0000000\0000000\all\blog.phpshiti.com"
    ServerName blog.x.com
    ServerAlias blog.x.com
    FcgidInitialEnv PHPRC "E:/php/phpStudy2016/php/php-7.0.33-nts/"
    FcgidWrapper "E:/php/phpStudy2016/php/php-7.0.33-nts/php-cgi.exe" .php
  <Directory "E:\0000000\0000000\all\blog.phpshiti.com">
      Options FollowSymLinks ExecCGI
      AllowOverride All
      Order allow,deny
      Allow from all
      Require all granted
  </Directory>
</VirtualHost>
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|学习笔记

GMT+8, 2025-5-9 20:51 , Processed in 0.015463 second(s), 13 queries , APCu On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表