/ 中存储网

Windows7系统下安装配置Apache+PHP5.3环境

2013-11-01 17:20:01 来源:ITJS.CN

最近在学习PHP,所以就在windows7下安装了PHP的开发环境。之所以没有选择集成的软件,如WAMP、AppServ等套件,是为了单独安装这些软件,有助于更加深入了解。

一、Apache的安装与配置

Apache HTTP Server是Apache软件基金会的一个开放源代码的网页服务器,可以在大多数电脑操作系统中运行,由于其跨平台和安全性,被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中。

1. 下载

下载地址:http://httpd.apache.org/download.cgi#apache22

文件名:httpd-2.2.25-win32-x86-no_ssl

2. 安装

安装过程很简单,和其他windows下的软件一样,唯一值得注意的是可以如果更改安装路径的话要选择Custom安装,如图所示:

然后一路Next就行了。

安装完毕以后,任务栏右下角托盘图标就会出现一个正在运行的羽毛图标,

然后用浏览器访问localhost(默认80端口,如果更改要适当变化),安装正确情况下会显示It Works.

接下来再看下apache的安装目录结构:

bin:存放apache常用的命令,如httpd

cgi-bin:存放linux常用的命令,如.sh

conf:存放apache配置文件httpd.conf

error:存放错误记录

htdocs:存放站点文件

icons:存放图标

logs:存放apache相关日志

manual:存放手册

modules:存放模块,apache是根据模块来管理的,对应httpd.conf文件中的LoadModule

至此,apache安装暂时完成;后面需要做一些配置上的修改。

3.配置

配置放到后面,安装完PHP再进行配置。

二、PHP的下载、安装与配置

1.下载

下载地址:http://windows.php.net/download/#php-5.3

文件名称:php-5.3.27-Win32-VC9-x86.zip

2.安装

PHP是绿色免安装的,直接解压到某个路径下就行可以使用了。

首先,把根目录下的php.ini-development改名为php.ini,为php的配置文件

然后,编辑php.ini,找到";extension= php_mysql.dll"去掉分号表示引入mysql模块;

第三,设置环境变量,

接下来,apache就要调用php的模块,使用php融入apache,按照之前的方法,打开conf/httpd.conf文件,搜索"LoadModule"关键字,在下面一行添加:

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

PHPIniDir "D:/php5"

最后,添加应用程序类型,搜索关键字"AddType application",在其下面一行添加:

AddType application/x-httpd-php .php

AddType application/x-httpd-php .html

到此为止,最简单的配置完成之后,apache就可以和php完美的结合在一起了。

三、遇到的问题以及解决办法

1. 在monitor窗口显示"the requested operation has failed"

原因,有很多种

原因一:80端口占用 

例如IIS,另外就是迅雷。有的apache服务器就是被迅雷害得无法启用! 

原因二:软件冲突 

装了某些软件会使apache无法启动如Dr.com 你打开网络连接->TcpIp属性->高级->WINS标签把netbios的lmhosts对勾去掉,禁用tcp/ip的netbios. 然后再启动应该就可以了。 

原因三:httpd.conf配置错误 

如果apache的配置文件httpd.conf搞错了,在windows里启动它,会提示the requested operation has failed ,这是比较郁闷的事,因为查错要看个半天。 

其实可以用命令行模式启动apache,并带上参数,apache会提示你哪句有误,然后就可以针对性的解决,命令如下:

httpd.exe –t意思是:: run syntax check for config files

下面是我遇到的一些问题,还不少。

这个错误是因为LoadModule后面的参数错误,仔细核对;

这个错误也是粗心大意造成的,还是LoadModule后面的第二个参数写错了;

当然,还有这个BT的错误;

And this,很显然是语法错误;

最后,费劲九年二虎之力终于成功了。

此外:

apache启动报错:the requested operation has failed解决办法

直接搜这个很慢,因为有很多中可能。

最简单的方法是查看logs目录下的error.log

2.查看哪个进程占用80端口的方法

打开cmd, netstat –anb, 可以找出占用80端口的程序,然后找到对应的PID,在任务管理器(TaskManager)中杀死对应的进程.