免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 18566 | 回复: 5
打印 上一主题 下一主题

启动Apache时提示错误“Cannot load php5apache2_2.dll into server” [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-08-14 17:57 |只看该作者 |倒序浏览
启动Apache时提示错误“Cannot load php5apache2_2.dll into server”
2011-07-14 16:41
故障现象:

  在命令符方式下启动Apache时提示错误信息“Syntax error on line 122 of D:/Apache/conf/httpd.conf: Cannot load D:/PHP/php5apache2_2.dll into server”,导致Apache无法启动。

  Apache的配置文件D:/Apache/conf/httpd.conf第122行内容为:

  LoadModule php5_module D:/php/php5apache2_2.dll
  PHPIniDir "D:/php"

  注意:其中D:/PHP/php5apache2_2.dll是我安装php的相应路径。Apache为2.2.17版本,php为5.3.6版本。

出现错误的原因:

  在网上查到一位朋友遇到类似情况,并提示根据PHP的安装文件名称“php-5.3.6-Win32-VC9-x86.zip”得知该版本的PHP安装文件是由VC编译完成的,因此如需要运行或调用该PHP压缩包中的相关文件,则需要首先安装VC的运行时环境。如果你的机器没有安装有VC运行时环境,则Apache调用该PHP压缩包中的相关文件时会提示如上错误信息。

解决方法:

  在网上搜索“VC2008可再发行组件”或者是“VC2008运行库”,下载安装后即可解决此故障。

出现此错误的其他原因及解决方法:

  原因:由于apache版本的不同,对应的“php5apache2.dll”也不同,如果你加载了错误的“php5apache2.dll”,则会提示该错误信息。

  示例:假如你使用的是Apache2.2版的,则使用语句“LoadModule php5_module modules/php5apache2.dll”来加载PHP,就会出现该错误。这段代码的配置应该修改为“LoadModule php5_module modules/php5apache2_2.dll”或者“LoadModule php5_module "D:/php/php5apache2_2.dll"”。

  总结:

  Apache2.2 对应 php5apache2_2.dll
  Apache2.1 对应 php5apache2.dll
  Apache1 对应 php5apache.dll

  由于上述原因,假设是安装了Apache2.2又安装了PHP5.0那就要出错了,在安装Apache和PHP时应该选择版本相对应的来进行配置安装。

http://2796065.blog.163.com/blog/static/4486422820078410469374/

WindowsXP下搭建php环境   2007-09-04 22:46:09|  分类: php |  标签: |字号大

小 订阅
终于搭建上,php环境了。来分享一下

各个软件的版本

windowsXp

Mysql5.0.27

Apache2.2.4

php5.2.3

以上这些包很好下的,在迅雷上就有。

准备工作,首先你要选择好你要将这些软件安装在什么地方。推荐放在根目录下,比如我放在D:\winlamp

将安装后的文件夹全部放在这里。

然后新建一个www和tmp文件夹。   

1,安装apache

不详细说明了,安装在D:\winlamp\apache2

打开httpd.conf配置文件,在D:\winlamp\Apache Software Foundation\Apache2.2\conf下

查找 DocumentRoot   修改为DocumentRoot "D:/winlamp/www"

还有一个地方也要修改    <Directory "D:/winlamp/www">

查找 DirectoryIndex

修改为 DirectoryIndex index.html index.php index.php3 index.htm

2,安装php

解压就可以了,我把文件夹名改为php5了,然后把php.ini-dist文件,复制到c:\windows下改名php.ini。

打开php.ini

查找 extension_dir

修改 extension_dir = "D:\winlamp\php5\ext"

查找 doc_root

修改 doc_root = "D:\winlamp\www"

查找 ;session.save_path

修改 session.save_path = "D:\winlamp\tmp"

查找 ;upload_tmp_dir

修改 upload_tmp_dir ="D:\winlamp\tmp"

查找 ;default_charset="iso-8859-1"

修改 default_charset = "gb2312"

查找 register_globals=Off

修改 register_globals=On

查找 extension=php

去掉他们的分号

     extension=php_gd2.dll

     extension=php_mysql.dll

     extension=php_mysqli.dll

到这里php.ini就配置结束。接着很重要的一点将

d:\winlamp\PHP5\libmysql.dll,d:\winlamp\PHP5\ext\php_mysql.dll,d:\winlamp\PHP5\ext\php_mysqli.dll

拷贝到C:\Windows\system32下,这样PHP5才能支持MYSQL。

3,重新修改httpd.conf

找到LoadModule 这几行然后新起一行加上

    LoadModule php5_module "D:/winlamp/php5/php5apache2_2.dll"

然后在文件末尾加上

    AddType application/x-httpd-php .php

查找   DirectoryIndex

修改    DirectoryIndex index.html index.php index.php3 index.htm

3,安装mysql

一切按照默认的就好,但是路径要放在D:\winlamp下

最后会提示输入数据库密码,输入就好了

http://wenku.baidu.com/view/904cbd30b90d6c85ec3ac65a.html

版本一定要一致 否则出问题的

论坛徽章:
0
2 [报告]
发表于 2011-08-16 20:34 |只看该作者
本帖最后由 liyihongcug 于 2011-08-16 20:43 编辑

http://ihacklog.com/server/apach ... server-problem.html
解决方法


Windows2003下apache+php+mysql配置
2010年01月15日 星期五 下午 10:45


首先要下载apache、PHP和mysql的windows下安装包,我的apache用的是apache_2.0.63-win32-x86-no_ssl.msi,
下载地址:http://httpd.apache.org/
PHP用的是php-5.2.12-Win32.zip,
下载地址http://www.php.net/
myslq用的是mysql-5.0.89-win32.zip。
下载地址http://www.mysql.com/ 以上都是我自己服务器配置的但是这个不加Zend速度很慢你可以下载一个ZendOptimizer-3.3.3-Windows-i386.exe。
下载地址:http://www.aianquan.com/soundsup ... .3-Windows-i386.exe
        
一:APACHE的安装

直接点击安装文件,直接下一步安装完成就行了(其中有选项要填的时候填一下就行了)。

现在开始配置Apache服务器,使它更好的替我们服务,事实上,如果不配置,你的安装目录下的Apache2\htdocs文件夹就是网站的默认根目录,在里面放入文件就可以了。
这里我们还是要配置一下,有什么问题或修改,配置始终是要会的, “开始”、“所有程序”、“Apache HTTP Server 2.2”、“Configure Apache Server”、“Edit the Apache httpd conf Configuration file”,点击打开。

现在正式开始配置Apache服务器,打开配置文件找到:
LoadModule 在它末尾加上
LoadModule php5_module C:/php/php5apache2.dll 注意这里有的地方是php5apache2.dll不然运行不起来(Apache 2.2以后版本为php5apache2_2.dll)
PHPIniDir "C:/php" 这个是我php 解压的文件是放在C盘这个可以改动
查找AddType application/x-gzip .gz .tgz 这个是要解析什么后缀的文件
后添加上
AddType application/x-httpd-php .php
AddType application/x-httpd-php .html
AddType application/x-httpd-php .htm
设置默认页面:
找到:DirectoryIndex index.html index.html.var
改为:DirectoryIndex index.htm index.html default.htm default.html index.html.var index.php default.php

2配置php
首先在C盘新建一个php文件并把php包解压里面有一个
php.ini-dist 文件重命名为 php.ini,PHP的配置文件就是它,修改以下几个地方,
修改好后把 php.ini、php5ts.dll文件复制到 C:\WINDOWS\ 目录里:
把 C:\php\ext 里面
php_bz2.dll
php_gd2.dll
php_mbstring.dll
php_msql.dll
php_mssql.dll
php_mysql.dll
php_mysqli.dll
考到 C:\WINDOWS\system32
这下修改 php.ini
打开 php.ini
查找 extension_dir 有这么一行
extension_dir = “./” 去前面的分号
将此行改成
extension_dir = “C:\php\ext”
其中C:\php是你安装php的路径.路径不正确将无法加载dll
2 分别查找

default_charset="gb2312" ,修改默认字符集,这里,如果前面有分号“;”,去掉这个分号;
register_globals=Off 改为 register_globals=On ,使传递全局变量有效;
extension=php_dba.dll 如果前面有分号,取消分号,以下同;
extension=php_dbase.dll
extension=php_gd2.dll   GD库做图,一般用于图形验证码;
extension=php_mysql.dll 用于连接MYSQL数据库;
magic_quotes_gpc = On 如果是 Off,一定要打开为 On,这是防止sql攻击的重要的一步。

这样apache启动时就可以加载这些dll了
其实这些都是要运行的比如你还可以运行mssql等那你用那个就的去分号自己要用那个你就看着办了

3 设置会话保存路径
查找session.save_path 有这么一行
; session.save_path = “C;\path”
在此行后加入一行(注意是加入一行,不是加到后面)
session.save_path = “C:\WINDOWS\Temp” 保存到你的临时目录下,这里完全可以保存到windows临时目录Temp下


3、安装mysql这个就很简单了

mysql安装向导启动,按“Next”继续

选择安装类型,有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,我们选择“Custom”,有更多的选项,也方便熟悉安装过程

在“Developer Components(开发者部分)”上左键单击,选择“This feature, and all subfeatures, will be installed on local hard drive.”,即“此部分,及下属子部分内容,全部安装在本地硬盘上”。在上面的“MySQL Server(mysql服务器)”、“Client Programs(mysql客户端程序)”、“Documentation(文档)”也如此操作,以保证安装所有文件。点选“Change...”,手动指定安装目录。


填上安装目录,我的是“D:\mysql”,也建议不要放在与操作系统同一分区,这样可以防止系统备份还原的时候,数据被清空。按“OK”继续。
返回刚才的界面,按“Next”继续。
确认一下先前的设置,如果有误,按“Back”返回重做。按“Install”开始安装。

这里是询问你是否要注册一个mysql.com的账号,或是使用已有的账号登陆mysql.com,一般不需要了,点选“Skip Sign-Up”,按“Next”略过此步骤。

在软件安装完成了,出现上面的界面,这里有一个很好的功能,mysql配置向导,不用向以前一样,自己手动乱七八糟的配置my.ini了,将 “Configure the Mysql Server now”前面的勾打上,点“Finish”结束软件的安装并启动mysql配置向导。

设置完毕,按“Finish”结束mysql的安装与配置——这里有一个比较常见的错误,就是不能“Start service”,一般出现在以前有安装mysql的服务器上,解决的办法,先保证以前安装的mysql服务器彻底卸载掉了;不行的话,检查是否按上面一步所说,之前的密码是否有修改,照上面的操作;如果依然不行,将mysql安装目录下的data文件夹备份,然后删除,在安装完成后,将安装生成的 data文件夹删除,备份的data文件夹移回来,再重启mysql服务就可以了,这种情况下,可能需要将数据库检查一下,然后修复一次,防止数据出错。

与Apache及php相结合,前面已提过,这里再说一下,在php安装目录下,找到先前重命名并编辑过的 php.ini,如下图所示,Ln563,把“;extension=php_mysql.dll”前的“;”去掉,加载mysql模块。保存,关闭后,重启apache就可以了。这里也可以选择其它要加载的模块,去掉前面的“;”,就表示要加载此模块了,加载的越多,占用的资源也就多一点,不过也多不到哪去。所有的模块文件都放在php解压缩目录的“ext”之下,我这里的截图是把所有能加载的模块都加载上去了,前面的“;”没去掉的,是因为“ext” 目录下默认没有此模块,加载会提示找不到文件而出错。这里只是参考,一般不需要加载这么多,需要的加载上就可以了,编辑好后保存,关闭。


同样,加载了模块后,就要指明模块的位置,否则重启Apache的时候会提示“找不到指定模块”的错误,这里介绍一种最简单的方法
,直接将 php安装路径、里面的ext路径指定到windows系统路径中——在“我的电脑”上右键,“属性”,选择“高级”标签,点选“环境变量”,在“系统变量”
下找到“Path”变量,选择,双击或点击“编辑”,将“;C:\php;C:\php\ext”加到原有值的后面,当然,
其中的“c:\php”是我的安装目录,你要将它改为自己的php安装目录,如下图所示,全部确定。系统路径添加好后要重启电脑才能生效,
可以现在重启,也可以在所有软件安装或配置好后重启。
这样还不行 其实我发现没有那么麻烦的话 就可以直接下一个 appServer 这个东东哦!
它是 这三个整合一块的不错哦!不想那么麻烦你就用它吧!自我感觉很不错的。
可以加我QQ群:97157124

http://hi.baidu.com/yang_bo1986/ ... 473ed48cb10d03.html

http://www.cnblogs.com/hawkjin/archive/2008/03/04/1090452.html

http://www.it503.com/caozuoxitong/windows2003/2010/0517/276.html

论坛徽章:
0
3 [报告]
发表于 2011-08-17 09:05 |只看该作者
Apache2 服务因 1 (0x1) 服务性错误而停本文引用地址:http://MadeinCHN.cn/thread-38-6131-1-1.htm | 复制地址


本 地调试用过一段时间 IIS 之后,觉得用来跑 PHP 表现一般,这两天便打算换成 Apache 来玩玩。以前在电脑里也装过 Apache 的,但一直没好好地去用。但是今天装好之后,却发现居然不能打开 localhost ,一直是“正在打开页面”的状态。查看错误日志 (Apache2\logs\error.log) 发现该日志文件已经有二十几兆了,而且还在不断膨胀中!日志中的报错,基本都是类似的内容:

[复制到粘贴板] [ - ]代码:Sat Jun 24 23:30:10 2006] [crit] (10022)提供了一个无效的参数。: Child 448:   setup_inherited_listeners(), WSASocket failed to open the inherited socket.
网上找了点资料看,原来是 NETBIOS 名静态解析失败,解决的办法很简单,步骤如下:


在“网上邻居”上 点右键,菜单上选“属性(R)”。出来“网络连接”窗口,在“本地连接”上点右键,菜单中点“属性(R)”。出来“本地连接 属性”面板,在“此链接使用下列项目”中找到:“Internet 协议 (TCP/IP)”,并爽击它。在弹出的“Internet 协议 (TCP/IP) 属性”面板上,点击“高级(V)...”按钮。“高级 TCP/IP 设置”面板上点“WINS”选项标签,去掉“启用 LMHOSTS 查询(L)”前面的勾,点“确定”按钮。


打开“控制面板”,点击“Windows 防火墙”,点击“高级”选项标签,选择“本地连接”,并点击旁边的“设置(T)...”按钮。在服务选项中找到“安全 Web 服务器(HTTPS)”,并把它勾选上,点“确定”按钮。

OK!搞定了,重启 Apache,现在就可以通过 localhost 打开你的网站了吧

论坛徽章:
0
4 [报告]
发表于 2011-08-17 09:54 |只看该作者
本帖最后由 liyihongcug 于 2011-08-17 09:56 编辑

配置发现好多的错误.
windowsXp

Mysql5.0.27

Apache2.2.4

php5.2.3   这个是没有任何问题的, 详细步骤如上.

注意 port冲突问题 我把80--> 800

下面遇到提示email 或者name  admin 错误请输入以下就没有问题
ServerAdmin admin@8s7.net
ServerName yu.8s7.net:80

route print 查看路由表   http://www.360doc.com/content/11/0609/22/217811_122786090.shtml  这个可以知道网卡情况.本地有多块网卡ipconfig /all
怎么查看80端口占用情况?   


前言:apache虽然能运行,但是看见error.log中有httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.1.111 for ServerName这个错误,想看看是否有其他占用了80端口

开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"


经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用

假如我们需要确定谁占用了我们的80端口

1、Windows平台
在windows命令行窗口下执行:
C:\>netstat -aon|findstr "80"
TCP    127.0.0.1:80         0.0.0.0:0              LISTENING       2448
看到了吗,端口被进程号为2448的进程占用,继续执行下面命令:
C:\>tasklist|findstr "2448"
thread.exe                     2016 Console                 0     16,064 K
很清楚吧,thread占用了你的端口,Kill it
如果第二步查不到,那就开任务管理器,看哪个进程是2448,然后杀之即可。

补充:原来出现这个错误原因(httpd.exe: Could not reliably determine the server's fully qualified domain name, using 192.168.1.111 for ServerName)是因为DNS没配置好. 如果不想配置DNS, 就在httpd.conf , 在最前加入 ServerName localhost:80 即可

http://www.phpweblog.net/xuehaik ... 008/11/13/6070.aspx

论坛徽章:
0
5 [报告]
发表于 2013-02-22 09:55 |只看该作者
写的很全面,感谢分享。其实这些资料仔细阅读官方安装说明都会发现。

论坛徽章:
0
6 [报告]
发表于 2013-10-24 09:21 |只看该作者
{:2_168:}{:2_168:}{:2_168:}{:2_168:}{:2_168:}{:2_168:}
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP