一、 软件下载
Apache
(找个最新版本的下载,这里用的德国镜像,注意区分32位和64位!点击后自动开始下载)
有些朋友可能疑惑为什么不去apache http server项目的官网https://httpd.apache.org/download.cgi下载apache,原因是apache官网只提供apache http server源码,在windows安装的话需要自己编译,windows版本的可执行文件还是要下载第三方封装的。
Mysql:
(选择windows安装工具进行下载,使用installer for windows安装简单快捷,但是不能设置mysql安装目录;mysql community server 虽然可以设置mysql安装目录,但是安装比较繁琐,需要配置环境变量和执行命令行)
(选择操作系统,并下载第二个,上面那个是在线安装,比较费时。MySQL只有32位的,但是64位系统也可以用)
(这一步是MySQL问你要不要注册,看个人需求,一般直接下载就可以)
PHP
(选择你需要的php版本,一定要下载thread safe的,64位或32位要跟apache统一!)
(然后选择zip文件下载,后面两个是给PHP开发组成员和php扩展开发者用的,如果你在看这篇教程,那你肯定是用不到的……)
保证软件位数与windows系统位数一致
最后一定要保证PHP和Apache server跟你电脑位数一样,都是64位或者都是32位的,MySQL install只有32位的,这个不影响。
二、软件安装
目录结构
这里我打算将php安装到e:\wamp\php7目录下,将apache安装到e:\wamp\Apache24目录下。
PHP
这个太简单了,将php目录解压到你想安装php的目录就可以,比如我这里是e:\wamp\php7
Apache
1.1 首先将apach压缩包中的apache文件夹解压到我们想要安装apache的位置,当前版本是Apache24。
1.2 打开Apache24目录,找到conf/httpd.conf,进行配置
1.3 告诉apache你的apache文件夹目录
找到
Define SRVROOT "/Apache24"
改为
Define SRVROOT "E:/wamp/Apache24"
(注意,路径中一定是斜杠而不是反斜杠)
1.4 告诉apache你的网站代码的目录(如果你是第一次配置,建议先跳过,配置环境成功以后再改)
找到
DocumentRoot "${SRVROOT}/htdocs"
默认是apache目录下的htdocs,可以自己创建个文件夹,如www
改为
DocumentRoot "${SRVROOT}/www"
1.5 告诉apache php的安装路径,并加载扩展以支持php7
在httpd.conf最后追加:
# php7 support
LoadModule php7_module"E:/wamp/php7/php7apache2_4.dll"AddHandler application/x-httpd-php .php
# configure thepath to php.ini
PHPIniDir"E:/wamp/php7"
这里php目录和dll文件目录根据你自己的情况进行修改。
1.6 告诉apache默认索引文件(如果你是第一次配置,建议先跳过,配置环境成功以后再改)
查找
DirectoryIndex index.html
改为
DirectoryIndex index.php index.htm index.html
这样,在未指定文件时,优先打开index.php
1.7 检查apache配置是否正确
使用管理员权限启动命令行:win+X,win10的话再选择运行
执行bin目录下的httpd(输入你的相应目录并回车)
若光标一直闪动,并且浏览器输入localhost显示apache的页面,那么就说明配置apache成功了。如果关掉,则apache服务中止。
1.8 遇到的问题1
httpd: Syntax error on line 542 of E:/wamp/Apache24/conf/httpd.conf: Cannot load E:/wamp/php7/php7apache2_4.dll into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3
若是报这个错,要么就是你php7apache2_4.dll的路径填的不对,要么就是php7apache2_4.dll文件的位数(32或64)不对,或者php7apache2_4.dll跟php版本对不上,反正意思就是apache找不到对应的dll文件,版本对不上也提示找不到。
1.9 遇到的问题2
(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address [::]:443(OS10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : AH00072: make_sock: could not bind to address 0.0.0.0:443AH00451: no listening sockets available, shutting down
AH00015: Unable to open logs
若是报这个错误,就是443端口被占用了,将Apache24\conf\extra\目录下httpd-ahssl.conf和httpd-ssl.conf两个文件中的443换个端口就行了(每个文件都有多个443,需要替换全部)。
1.10 遇到的问题3
这种原因就是80端口被占用,在httpd.conf文件中查找80,将80改为8080或者8088,然后保存,重启apache,在浏览器中输入localhost:8080或者localhost8088试试。
1.11 遇到的问题4
执行完httpd命令后不报错,过一会自动停止。localhost页面也不能访问,在服务中无法开启apache。
原因有可能是你的visual C++版本不够,比如说这里我们下载的apache需要vc15
通过控制面板->程序和功能查看,我之前的vc版本不够,vc15对应的是visual C++2017,通过安装VC2015-2019后解决,apache能够正常启动。
1.12 开机自动启动apache
也就是将apache加入到windows的服务中,管理员权限执行httpd -k install
这样之后,打开任务管理器,选择服务,如果能找到Apache,则表示加入成功。
在修改了apache配置文件之后,也可以在这里重启apache来使配置生效。
Mysql
1.1 双击运行下载的msi文件,选择developer default就可以,这会自动给你挑选一些开发者常用的产品(如server,client,shell命令行,excel支持等),点击下一步。
1.2 点击下一步后,这一步msyql installer检查依赖,下面列出来的是安装mysql产品所需要的依赖,其中status标识为Manual的是不能自动安装的依赖。这里第一个产品mysql for excel可以自动安装依赖,那就让他自己安装就可以,后面两个虽然不能自动安装依赖,但是一个是VS的mysql插件,一个是MySQL的python连接器,这里我们使用的语言是PHP,所以这两个可以不管它们。点击next,弹窗下一步说。
1.3 点击next之后,会弹窗提示说“有依赖没有安装”,就是我们上面说的原因,不用管,点Yes继续就可以。
1.4 这一步就是MySQL告诉你哪些产品将被安装,点Execute就开始安装了。
1.5 安装完之后点next
1.6 现在安装完了,开始配置了,点next
1.7 这里选第一个,因为第二个是InnoDb集群,我们开发用不到。
1.8 这里配置网络,默认就可以,直接next
1.9 这里配置root账号的密码,然后next。
(底下Add User可以添加其他用户,不过不用在这里加,可以安装完用客户端加)
1.10 这里是选择MySQL server是否跟随windows启动,默认就是勾选的,点next。
1.11 这一步应用之前选择的配置,直接点execute
1.12 配置完成,点finish
1.13 这里是配置路由,不用管,直接next+finish
1.14 这里是检测MySQL是否安装成功,底下输入你的username和password,点check,会有提示。通了之后直接next
1.15 Finish就行了。
1.16 之后会弹出命令行窗口和MySQL workbench,命令行窗口直接关了就行,workbench可以在右下角重启MySQL,可以当客户端用(不过不好用,建议用navicat)。
1.17 MySQL的安装就到此为止了。
至此大功告成,在htdocs中增加一个phpinfo.php文件,内容为
phpinfo();
?>
然后在浏览器中访问它,localhost:80(或localhost:8080或localhost:8088,看你端口填的哪个),如果出现:
则表示配置成功,php成功通过apache运行。