2020-12-06

windows本地搭建apache+mysql+php环境详细讲解

为了测试方便我们可以先将环境配置中需要用到的环境变量配置好

  • 打开高级系统设置在这里插入图片描述
  • 打开环境变量在这里插入图片描述
  • 点击新建,将apache,php,mysql的运行目录添加到环境变量中
    在这里插入图片描述
  1. mysql下载配置

mysql官网下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

mysql有安装版和解压版之分:

  • 安装版:以msi结尾的,这种版本优点是安装便捷,全是傻瓜式的下一步;缺点是会不自觉的安装一些我们根本不需要的组件
  • 解压版:以zip或者其他压缩格式结尾的,这种版本虽然安装麻烦一点,但有优点是轻便,不含多余的组件,甚至转移其他电脑都很容易。

这里选择下载解压版
在这里插入图片描述

解压到D盘的WAMP目录下
在这里插入图片描述

新建一个my.ini的配置文件,新建一个data目录用于储存数据库数据
my.ini配置文件内容如下:

#代码开始
[Client]
#设置3306端口
port = 3306

[mysqld]
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=D:\WAMP\mysql
# 设置mysql数据库的数据的存放目录
datadir=D:\WAMP\mysql\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
#代码结束

得到文件目录如下:
在这里插入图片描述

以管理员身份打开cmd,进入到mysql的bin目录下执行如下代码,初始化数据库(注意这一步一定要保证data里面没有东西)
cd /d D:\WAMP\mysql\bin
mysqld.exe --defaults-file="D:\WAMP\mysql\my.ini" --initialize-insecure

安装并启用mysql服务(install后面跟服务名,不写则默认为mysql)
mysqld.exe --install MySQL
net start MySQl
./mysql.exe -u root -p

进入mysql (不需要输入密码,直接回车),设置root用户密码,刷新权限
use mysql;
update user set authentication_string=password('您的密码') where user='root';
flush privileges;

卸载mysql
mysqld.exe --remove MySQL

这样卸载只是把服务禁用了,要想把服务删除,还得执行下面这一步
sc delete MySQL

  1. apache下载配置

apache官网下载地址https://www.apachehaus.com/cgi-bin/download.plx

分32位和64位 (这里注意,一定要记住VC15和VC16的选择要和PHP的选择一致。)
在这里插入图片描述

解压获得一个这样的目录
在这里插入图片描述

修改apache配置 conf/httpd.conf

主要修改这样几个地方:

  • apache目录
    Apache目录

  • 需要监听的端口
    需要监听的端口

  • 服务器名称
    服务器名称

  • 站点根目录 站点根目录

  • 如果要配置虚拟主机,还需要开启这个,然后去修改httpd-vhosts.conf文件 虚拟主机

管理员身份打开cmd
在这里插入图片描述

进入apache的bin目录下,安装并启动apache为系统服务:
cd /d D:\WAMP\apache\bin
httpd.exe -k install -n Apache24
net start Apache24

如果出现apache服务无法启动的情况:

在apache的bin目录下输入 httpd.exe 可能由于电脑中其他服务占用了443端口或者80端口,导致httpd-ssl无法启动,如vmware-hostd.exe占用443端口
详见:https://blog.csdn.net/lamp_yang_3533/article/details/53209579

或者80端口被占用,输入netstat -ano查看端口占用情况
在这里插入图片描述在这里插入图片描述
这里我们可以看到80端口被pid为4的进程占用
所以我们尝试为关闭pid为4的进程
这里我们可以通过命令行输入taskkill /pid 4 -t -f来完成
但是发现问题没有这么简单…进程拒绝访问了
在这里插入图片描述
于是我们又尝试通过任务管理器去查看进程,发现因为是system进程,所以无法终止
在这里插入图片描述
我们可以在网上找找如何终止system进程的方法,这里我选择的是修改80端口为8080端口
这里需要修改配置文件中的两个地方
在这里插入图片描述在这里插入图片描述
修改完成之后保存配置文件,就可以去启动我们的apache服务了
注意由于修改了端口,在浏览器进行测试时,我们输入的是localhost:8080
而不是localhost,因为localhost默认访问的是80端口,所以我们需要在后面指定访问的端口号
在这里插入图片描述

如果apache服务启动没有出错,浏览器访问localhost,显示如下界面 在这里插入图片描述

最后还有一步关联php:

修改httpd.conf配置文件:添加下面几项
在这里插入图片描述

#加载php模块
LoadModule php7_module "D:/WAMP/php/php7apache2_4.dll"

#加载php配置文件
PHPIniDir "D:/WAMP/php" 

#apache分配工作给php模块
<IfModule php7_module> 
  AddType application/x-httpd-php .php
  AddType application/x-httpd-php-source .phps
</IfModule>

其中 php7apache2_4.dll 库根据具体的php版本而定,可在php目录下寻找。
再重启apache。
启动apache也可以用这个小工具:

在这里插入图片描述

  1. php下载配置

php官网下载地址:https://windows.php.net/download

根据自己项目需求下载对应的版本,不过下载时要注意,因为有多个版本
x64代表电脑位数为64,x86代表电脑位数为32位,这个不用多说。
需要注意另外一个区别 thread safe (线程安全) 和 non thread
safe(线程不安全),这是因为php有两种运行方式 ISAPI 和 FastCGI 。
常见的apache 采用ISAPI 模式,及把php当成一个模块加载,需要选择线程安全的;
另外一些IIS、nginx采用FastCGI方式运行php,需要选择线程不安全的。

我们选择下载的是线程安全的php版本,由于之前apache选择的是VC15,所以我们这里php选择的依然是VC15,x64和x86这个就不用多说了,根据自己的电脑型号来选择
在这里插入图片描述

解压后得到一个这样的目录
在这里插入图片描述

在php目录下新建一个php.ini配置文件,将php.ini-development中的内容复制进去
得到一个这样的目录在这里插入图片描述

修改php.ini配置文件

  • extension_dir中填写的是ext目录的绝对路径
    在这里插入图片描述
  • 打开连接mysql需要可能用到的扩展在这里插入图片描述

测试php环境是否搭建成功,这里同理还是要先进入php.exe的目录下才能执行的

在apache/htdocs目录下创建index.php文件在这里插入图片描述

<?php
	echo 'hello php!';
?>

在这里插入图片描述

测试apache+php是否联调成功

在这里插入图片描述

测试mysql+php+apache是否联调成功

在apache/htdocs目录下新建mysql.php
在这里插入图片描述

<?php

$link = mysqli_connect('localhost', 'root', '');

if (!$link) {
	echo ('数据库连接失败');
}

mysqli_set_charset($link, 'utf8');

mysqli_select_db($link, 'mysql');

$sql = 'select * from student;';

$obj = mysqli_query($link, $sql);

$res = mysqli_fetch_assoc($obj);

var_dump($res);

mysqli_close($link);

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值