第一步:下载所需要的软件,PHP、Apache、MySQL、PHPmyadmin
注意事项:1.各个软件位数需要相同,更具自己的电脑位数而定,例如电脑是64位的,则需要下载64位的软件
2.注意Apache和PHP的配合,PHP版本5.5以上才能支持Apache2.4服务器,如果版本不对应的话,会出现Apache服务器无法启动,不能载入PHP模块的情况
以我的电脑64位版本做演示:
下载网址:
PHP:http://windows.php.net/download#php-7.0
Apache:https://www.apachehaus.com/cgi-bin/download.plx
MySQL:http://dev.mysql.com/downloads/mysql/5.7.html
phpmyadmin:https://www.phpmyadmin.net/downloads/
第二步:开始安装Apache
如何安装有好几种版本,有的是直接是压缩包解压,然后用命令行操作,这种方法比较牛逼点,还有一种是直接去下载msi版本,傻瓜式安装,这里介绍一下第一种方法:
1.解压下好的压缩包,注意路径
2.因为需要VC编译,为避免安装错误,可以先安装VC运行库,最好是64位和32位都按装一下避免安装错误
3.找到配置文件httpd.conf,用记事本打开,找到:Define SRVROOT 如图修改为你Apache解压存放的路径
4.打开cmd窗口(win+R),输入:"E:\ampServer\Apache24\bin\httpd.exe" -k install -n apache24 复制时注意引号。然后回车,显示安装成功,即为主服务安装成功。(这里需要管理员权限,注意文件路径)
5.打开浏览器访问127.0.0.1,如果显示Apache欢迎界面,则说明安装成功,如果不能显示,一般就是一下几个原因:
a.端口被占用,可以到配置文件httpd.conf修改监听端口,改成8080,或者其他的
b.还有就是配置文件里面deny form all ,需要将deny 改成 allow ,详细的可以参考一下:http://www.jb51.net/os/RedHat/1303.html
第三步:下载PHP,解压,下载的时候一定要注意版本问题,我就是在版本上花了好多时间,重装了好几次,
1.找到PHP主目录下的php.ini-development文件,重命名为php.ini,用记事本打开,找到extension_dir = "ext" ,ext 即为PHP主目录下的拓展文件夹,在ext前面加上ext文件夹的路径,注意要去掉前面得分号,分号是注释的作用
2.找到Apache配置文件httpd.conf,在一长串注释掉的拓展下面加上以下代码:
#***********php与Apache整合*****************************
#让apache载入php处理模块
LoadModule php7_module E:/ampServer/php-7.0.10/php7apache2_4.dll
#指定php的ini文件,该文件是对php的一些配置
PHPIniDir "E:/ampServer/php-7.0.10"
AddType application/x-httpd-php .php .phtml
#*******************************************************
3.Apache服务器默认的目标目录是Apache/htdocs,可以在conf文件里修改,DocumentRoot,将文件目录修改成自定义的文件,然后在滴定仪的文件下下面新建一个php文件,将以下代码加入PHP文件中:
<?php
phpinfo();
?>
然后在浏览器中打开该文件,如果能显示PHP集成关系图就说明集成成功了
第四步:MySQL的下载安装以及与PHP的整合
下载MySQL,请直接登录 http://dev.mysql.com/downloads/mysql/5.7.html并根据操作系统位数下载32位或64位
这里建议下载一个msi版本的,安装来比较便捷,网上也有详细的教程,因为软件装好之后还有很多问题需要去解决
1.仔细参考网上安装教程:http://www.cnblogs.com/seaBiscuit0922/p/5573043.html
2.配置环境变量(这里自行百度)
3.打开php.ini文件,找到extension = php_mysql.dll,extension = php_mysqli.dll 去掉前面的注释分号 ;
4.写一段php代码(testmysql.php)用于测试,保存在apache目录下htdocs文件夹
<?php
$coun=mysqli_connect("localhost","root","root","mysql");
if ($coun) {
echo"连接成功";
}else{
echo "连接失败";
}
?>
重启Apache,在浏览器输入127.0.0.1:8080/testmysql.php(8080为我的端口),如果能显示连接成功,则说明,PHP和MySQL整合成功
第五步:phpmyadmin的下载配置
1.下载:https://www.phpmyadmin.net/downloads/
2.解压到之前配置的目标文件夹下面,命名为phpmyadmin
3.在phpmyadmin文件夹下依次找到libraries/config_default.php,打开该PHP文件,打开后配置$cfg[‘Servers‘][$i][‘password‘] = ‘新密码‘;然后设置短语密码$cfg[‘blowfish_secret‘] = ‘‘;如果不知短语密码想设置成什么,以后设置也行。
4.在浏览器访问http://localhost:8080/phpMyAdmin/index.php进入登录页面输入用户名:root密码:之前设的新密码(数据库密码)登录即可。
总结一下:
1.配置Apache服务器的时候容易出现端口被占用的情况,
检测80端口被占用的办法:开始-运行-输入cmd(回车)-打开命令提示符输入——netstat -ano,就可以查看本机端口开放情况与对应的程序
。如下图:
可以看出80端口被pid1720的进程占用,现在,只要知道PID为1720的进程就可以释放80端口了。打开任务管理器
默认的任务管理器是没有PID这一项的,只需要将查看-选项列(s)中的PID勾选就可以了。
图中,可以看出PID:1720对应的进程为inetinfo.exe。(稍后解释inetinfo.exe进程)如果你现在直接结束掉这个进程,无论如何inetinfo.exe都会自动重新运行,只是这个时候的PID就改变了。所以这样不能完全的释放80端口。
最后操作:停止 IIS“默认网站。其实罪魁祸首是IIS,因为我之前有做网站,需要安装IIS,并且创建了一个站点,在控制面板-管理工具-internet 信息服务-网站下面可以看到这个站点,只需要把这个站点停止掉就可以了,然后你再到开始-运行-输入cmd(回车)-打开命令提示符——netstat -ano,可以看到已经没有80端口,这个时候在安装软件,就一切顺利了。
注:进程PID是可以变化的,就是说不同时间运行同一个程序,它的PID号就不同。不同计算机同一个进程的PID号多数情况也是不同的。因此,在结束inetinfo.exe之前的PID是一个三位数,重新启动后,它的PID可能为四位数了。这点不影响问题的解决,我只是好奇,便拿出来说罢了。
2.还可以通过命令行来检测到底是哪里出了问题
以管理员的身份 运行 以我的为例 F:/service/apache/bin/httpd.exe -w -n "apache2.2" -k start
如果出错的话,先显示出来,这样也可以知道到底是哪里出了问题
3.然后就是注意因为127.0.0.1和localhost默认端口是80,即127.0.0.1:80和前两者是一样的,但是如果修改过端口的话需要加上端口号,例如我的 127.0.0.1:8080
其实如果嫌弃每次都要输入127.0.0.1太麻烦的话也可以去修改Apache的配置文件和hosts文件,具体可以参考:
http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html
4.再就是 403 没有权限的问题,这里可以参考一下:http://www.jb51.net/os/RedHat/1303.html
完!
提醒:配置这个服务器测试环境,需要刚开始前先理清楚PHP Apache MySQL 之间的版本对应关系,以及需要注意软件与电脑系统位数相匹配,出现问题不要轻易放弃,学会利用搜索引擎,明白这些会事半功倍!