Windows搭建Apache+MySQL+PHP环境

PHP集成开发环境有很多,如XAMPP、AppServ......只要一键安装就把PHP环境给搭建好了。但这种安装方式不够灵活,软件的自由组合不方便,同时也不利于学习。所以我还是喜欢手工搭建PHP开发环境,需要哪个模块自己安装就行了,或者那个软件需要升级,直接升级那个软件就行了,并不影响其他软件,非常方便。

 

安装环境:windowsXP 32

 

一、准备工作-下载所需软件

  • Apache  httpd-2.2.22-win32-x86-openssl-0.9.8t.msi
  • PHP       php-5.3.10-Win32-VC9-x86.zip
  • MySQL   mysql-5.5.28-win32.zip

 

二、安装软件

1、安装Apache

注意:Apache服务器的默认是80端口

双击安装,与安装其他Windows软件没有什么区别,在填Server Infomation时,并没有特殊规定,只要输入的信息符合格式即可。

技术分享

技术分享

技术分享

服务器信息可以按照默认配置,如果服务器的80端口没被其他服务器程序占据。可选“for All Users,on Port 80, as a Service—Recommended.”如果仅为当前用户使用,使用8080端口,手动启动,选择“only for the Current User, on Port 8080, when started Manually.”。端口号是可以通过配置文件进行修改的。

技术分享

技术分享

技术分享

技术分享

技术分享

安装完成之后出现apache服务管理器,如下图,点击第一个图标

(注意:安装完apache后并没有启动此服务

技术分享

服务管理列表中有现在可以启动的服务项目,点击“Start”

技术分享

在浏览器输入http://localhost,如果显示It Works!,表示Apache安装成功。

 

2、安装php

将php-5.3.10-Win32-VC9-x86.zip解压到一个目录即可,本例我放置到了D:\php文件夹下。

 

3、安装MySQL

双击安装,如果需要更改安装目录,则在Choose Setup Type选择Custom

技术分享

技术分享

此处选择用户自定义配置

技术分享

可以更改mysql的安装目录位置,此处保持默认。

技术分享

技术分享

完成后勾选”Launch the MySql instance Configuration Wizard”进行MySql的配置。

技术分享

安装完成后开始配置MySQL,全部保持默认选项即可,但最好把MySQL默认编码改为utf8,在Modify Security Settings选项中设置密码,输入两次密码即可完成,最后点Execute完成配置。

技术分享

选择配置方式:“Detailed Configuration(手动精确配置)”、”Standard Configuration(标准配置)”,选择“Detailed Configuration”,

技术分享

选择服务器类型,“Developer Machine(开发测试类,mysql占用很少资源)”、“Server Machine(服务器类型,mysql占用较多资源)”、“Dedicated MySQL Server Machine(专门的数据库服务器,mysql占用所有可用资源)”,一般选择“Server Machine”。 可根据实际情况进行选择。本例使用开发测试类型滴。

技术分享

选择mysql数据库的大致用途,“Multifunctional Database(通用多功能型,好)”、“Transactional Database Only(服务器类型,专注于事务处理,一般)”、“Non-Transactional Database Only(非事务处理型,较简单,主要做一些监控,记数用,对MySAM数据类型的支持仅限于non-transactional)”,选择“Transactional Database Only”,本例选择的是通用多功能型。

技术分享

对InnoDB Tablespace进行配置,就是为InnoDB数据库文件选择一个存储空间,如果修改了,要记住位置,重装的时候要选择一样的地方,否则可能会造成数据库损坏,当然,对数据库做个备份就没问题了。使用默认位置。

技术分享

选择网站的一半mysql访问量,同时连接的数目,“Decision Support(DSS)/OLAP(20个左右)”、“Online Transaction Processing(OLTP)(500个左右)”、“Manual Setting(手动设置,自己输一个数)”,选择“Online Transaction Processing(OLTP)”。本例选择第三项,由于只在本机做开发测试工作。

技术分享

是否启用TCP/IP连接,设定端口,如果不启用,就只能在自己的机器上访问mysql数据库,选择“Enable TCP/IP Networking”是否启用TCP/IP连接,设定端口,如果不启用,就只能在自己的机器上访问mysql数据库,选择“Enable TCP/IP Networking”。

技术分享

设置数据库语言编码,“Standard Character Set”为西文编码、“Best Support For Multilingualism”为RTF-8编码、“Manual Selected Default Character Set/Collation”为手动设置编码,utf8

技术分享

”Install As Windows Service”选择安装MySql服务,可自定义服务的名称。

“Include Bin Directory in Windows PATH”是在机器上添加MySql的环境变量。

技术分享

选择“Modify Security Settings”,可根据实际要求勾选上“Enable root access from remote machines”以便能够从其他机器上访问。

技术分享

完成配置后点击“Execute”执行配置即可。

技术分享

技术分享

MySQL安装完成了。

 

三、整合Apache+PHP+MySQL

Apache : 首先修改Apache的配置文件,让Apache支持解析PHP文件。Apache配置文件在Apache安装目录的conf目录下的httpd.conf

1. 让Apache可以解析php文件,在配置文件中找到

#LoadModule vhost_alias_module modules/mod_vhost_alias.so

在下一行添加 (绿色的位置是根据PHP的所在目录而定的)

LoadModule php5_module "D:/php/php5apache2_2.dll"
PHPIniDir "D:/php"
AddType application/x-httpd-php .php .html .htm

 

2. 在配置文件中找到

  DirectoryIndex index.html

改为

  DirectoryIndex index.php index.html

 

3. 修改Apache站点目录,在配置文件中找到(Apache安装的目录不同,显示的值不一样)

  #DocumentRoot "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs"

改为

  DocumentRoot "D:/php"

再找到

  #<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs">

改为

  <Directory "D:/php">  

 

PHP : 把php.ini-development改名为php.ini,作为PHP的配置文件。修改php.ini

1. 设置PHP扩展包的具体目录,找到

; On windows:
; extension_dir = "ext"

改为 (值是ext文件夹的目录)

; On windows:
extension_dir = "D:/php/ext"

 

2. 开启相应的库功能,找到需要开启的库的所在行

;extension=php_curl.dll

;extension=php_gd2.dll

;extension=php_mbstring.dll

;extension=php_mysql.dll

;extension=php_xmlrpc.dll

去掉前面的分号(注释),即改为

extension=php_curl.dll

extension=php_gd2.dll

extension=php_mbstring.dll

extension=php_mysql.dll

extension=php_xmlrpc.dll

      

3. 设置时区,找到

;date.timezone =

 改为

date.timezone = Asia/Shanghai

 

配置完成,检测一下配置是否成功。重启Apache,在站点目录下新建文件index.php,输入内容:

<?php
    phpinfo();
?>

打开浏览器输入http://localhost,显示如下内容,则安装成功,并且成功关联MySQL。

技术分享

 

四、安装过程中遇到的问题

1、地址栏输入http://localhost,显示的IIS页面

原因:IIS与apache默认端口号一样,都是80

解决方法一:把IIS服务停止

解决方法二:修改Apache端口号

 

2、地址栏中输入http://localhost,提示域名解析错误

原因:安装后的apache并未启动

解决方法:启动后即可正常访问。

 

3、启动Apache时报错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 -w -n "Apache2" -k start

还有一种情况
即使你这次启动了,下次你都有可能启动失败
在运行里输入:netsh winsock reset
一会儿cmd会提示你重启,不用理会,现在APACHE已经可以启动了。
其实就是一个winsock的修复 

 

4、如果你Apache安装后服务管理列表中没有出现apache的服务项就说明在安装过程中出现了错误,这时候可以手动进行安装。

解决方法:使用cmd进入C:\Program Files\Apache Software Foundation\Apache2.2\bin这是我本机安装的目录, 并执行httpd -k install命令,提示成功后即可在服务管理列表中看到apache服务。

 

5、httpd.conf的配置时,若php目录下无php5apache2_2.dll,一定是下载的版本不对

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。