设为首页 收藏本站
查看: 616|回复: 0

[经验分享] 在win2003下apache2.2无法加载php5apache2_4.dll

[复制链接]

尚未签到

发表于 2015-11-17 12:14:50 | 显示全部楼层 |阅读模式
  昨天在一台win2003的服务器上配置apache和PHP,
  我在apache的配置文件httpd.conf里添加
   LoadModule php5_module "D:/php-5.4.23-Win32-VC9-x86/php5apache2_4.dll"
  
  结果apache服务器无法启动,在事件查看器中查看记录,发现错误提示:
  
  
事件类型:    错误
事件来源:    Apache Service
事件种类:    无
事件 ID:    3299
日期:        2014-2-11
事件:        22:52:16
用户:        N/A
计算机:    LY-CLOUDHOST
描述:
The Apache service named  reported the following error:
>>> httpd.exe: Syntax error on line 130 of C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf: Cannot load D:/php-5.4.23-Win32-VC9-x86/php5apache2_4.dll into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8     .

有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp 的帮助和支持中心。

Cannot load php5apache2_4.dll into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8
  
  一开始想了好久,一直没发现错误,后面猛然发现我的apache的版本是2.2,PHP的版本是5.5,PHP5.5不支持apache2.2了,所以只有php5apache2_4.dll,于是又去下载了个PHP5.4,里边包含了php5apache2_2.dll,在httpd.conf中添加:LoadModulephp5_module "D:/php-5.4.23-Win32-VC9-x86/php5apache2_2.dll",问题解决。
  

  

  

  

  
摘要 PHP5.5.0+ApacheHttpd 2.4.3,完成配置文件的修改后,启动Apache服务器,报Cannot load php5apache2_4.dll into server错误,记录其中的原因以及解决方法
下载了最新的PHP+Apache Httpd Server,版本号分别为5.5.0和2.4.3,完成配置修改后,启动Apache服务器,上报“Cannot load php5apache2_4.dll into server”错误。
1、以为是配置文件写错,仔细检查后,确实没有看出什么问题。
2、以为是采用了不匹配的线程安全版本,仔细检查后,PHP和Apache均是线程安全的版本。
3、排除法,删除httpd.conf中的这句话,Apache启动成功。Windows上的PHP和Apache采用dll动态链接库的方式配合,一种CGI方式,感觉问题出在dll上。
1LoadModule php5_module "D:\PHP\php5apache2_4.dll"4、查找网上的一些帖子,各种分析较多,搞得我思路混乱。但我坚信问题一定不会是PHP和Apache两个组织没有相互测试配套关系,肯定是自己哪里理解错了,决定登录PHP官网,windows.php.net,找到下面一段话,人家说的很清楚:
1234567891011121314Which version do I choose? IISIf you are using PHP with IIS you should use the Non-Thread Safe (NTS) versions of PHP. ApachePlease use the Apache builds provided by Apache Lounge. They also provide VC11 builds of Apache for x86 and x64. We use their binaries to build the Apache SAPIs. If you are using PHP with Apache 1 or Apache2 from apache.org (not recommended) you need to use the older VC6 versions of PHP compiled with the legacy Visual Studio 6 compiler. Do NOT use VC9+ versions of PHP with the apache.org binaries. VC9 and VC11More recent versions of PHP are built with VC9 or VC11 (Visual Studio 2008 and 2012 compiler respectively) and include improvements in performance and stability. The VC9 builds require you to have the Visual C++ Redistributable for Visual Studio 2008 SP1 x86 or x64 installed.查看系统的Visual Studio Distribute版本是2008,对应VC9,但我使用的是Visual Studio 2012编译的PHP版本(VC11),动态连接于Apache中的dll,可能就会出现问题。重新下载了VC9版本的PHP,Apache Httpd Server启动成功,问题解决!


下载开源软件时,要特别注意编译环境的版本,仔细阅读软件的版本ReleaseNotes,往往能解决绝大多数问题。

  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-140303-1-1.html 上篇帖子: ubuntu下升级php5 下篇帖子: 交叉编译apache2+php5
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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