1.准备工作
1)Apache压缩包
在官网https://www.apachelounge.com/download
下载:httpd-2.4.48-win64-VS16.zip 26 May '21 10.364kPGP Signature (Public PGP key), SHA1-SHA512 Checksums
2)MySQL压缩包
在官网https://dev.mysql.com/downloads/mysql/8.0.html
下载:(mysql-8.0.25-winx64.zip)
3)PHP压缩包
在官网https://windows.php.net/download/
下载:VS16 x64 Thread Safe (2021-Jun-02 01:28:46)版本,用于apache
Zip [25.5MB]
sha256: 6b8ca3c5116f7d7181db8beed504af89133beafb9020b30dad65ad1fe34147ea
Debug Pack [24.26MB]
sha256: e39624e587556e215db5a3298ee0a006326129795000d57b46fee5ab74cc3839
注意:VS16 x64 Non Thread Safe (2021-Jun-02 01:24:04)用于IIS
2.Apache环境配置
解压httpd-2.4.48-win64-VS16.zip,将文件夹httpd-2.4.48-win64-VS16下Apache24拷贝到d:\盘根目录
3.php环境配置
-
解压php-8.0.7-Win32-vs16-x64.zip文件,将文件夹拷贝到d:/根目录下,命名为php8
-
解压php-devel-pack-8.0.7-Win32-vs16-x64.zip文件,将文件夹php-devel-pack-8.0.7-Win32-vs16-x64\php-8.0.7-devel-vs16-x64下的内容拷贝到D:\php8下,并执行phpize.bat文件
-
在D:/根目录下新建www文件夹
4.Mysql环境配置 -
解压mysql-8.0.25-winx64.zip,将文件及mysql-8.0.25-winx64拷贝到d:\根目录下,命名为mysql8
5.修改配置文件
1修改apache24文件夹下conf目录下的httpd.conf文件
37行 Define SRVROOT “c:/Apache24” -> Define SRVROOT “D:/Apache24”
227行 #ServerName www.example.com:80 -> ServerName localhost:80
251行 DocumentRoot “ S R V R O O T / h t d o c s ” − > D o c u m e n t R o o t “ D : / w w w ” 252 行 < D i r e c t o r y “ {SRVROOT}/htdocs” -> DocumentRoot “D:/www” 252行 <Directory “ SRVROOT/htdocs”−>DocumentRoot“D:/www”252行<Directory“{SRVROOT}/htdocs”> -> <Directory “D:/www”>
272行 AllowOverride None -> AllowOverride All
285行 DirectoryIndex index.html -> DirectoryIndex index.html index.php
将下面要开启模块的注释打开 -
LoadModule deflate_module modules/mod_deflate.so
-
LoadModule rewrite_module modules/mod_rewrite.so
-
Include conf/extra/httpd-vhosts.conf
-
LoadModule authz_host_module modules/mod_authz_host.so
-
LoadModule access_compat_module modules/mod_access_compat.so
-
LoadModule proxy_module modules/mod_proxy.so
-
LoadModule proxy_http_module modules/mod_proxy_http.so
-
LoadModule vhost_alias_module modules/mod_vhost_alias.so
httpd.conf文件,在最后面加上下面内容:
LoadModule php_module D:/php8/php8apache2_4.dll
AddType application/x-httpd-php .php .html .htm
AddType application/x-httpd-php-source .phps
PHPIniDir D:/ php8
LoadFile D:/php8/php8ts.dll
LoadFile D:/php8/libssh2.dll
2.将D:\php8\php.ini-development复制一份并命名为php.in,如下修改:
768行 ;extension_dir = “ext” -> extension_dir = “D:/php8/ext”
921行 ;extension=curl -> extension=curl
925行 ;extension=gd -> extension=gd
931行 ;extension=mbstring -> extension=mbstring
933行 ;extension=mysqli -> extension=mysqli
938行 ;extension=pdo_mysql -> extension=pdo_mysql
970行 ;date.timezone = -> date.timezone = PRC
1348行 ;session.save_path = “/tmp”-> session.save_path = “D:/php8/sionmp”
;enable_post_data_reading = Off --> enable_post_data_reading = On
;extension=fileinfo --> extension=fileinfo
;extension=openssl --> extension=openssl
保存php.ini文件后退出
用管理员打开CMD窗口运行 -
添加启动服务 “D:\Apache24\bin\httpd.exe” -k install -n Apache24
-
安装apache服务:httpd.exe -k install
卸载apache服务:httpd.exe -k uninstall -
启动apache httpd -k start 服务
重启apache httpd -k restart服务
停止apache httpd -k stop 服务 -
运行ApacheMonitor.exe可以查看apache服务状态,也可以启动或停止服务
6.Mysql数据库安装
1.在D:\mysql8\bin目录下自行创建my.ini文件
2.在文件中添加如下内容
[mysqld]
设置3306端口
port=3306
允许最大连接数
max_connections=500
允许连接失败的次数。
max_connect_errors=10
服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
3. 用管理员方式打开cmd,并进入mysql8的bin目录
4. 利用mysqld --initialize –console 命令获取初始密码
-
利用mysqld --install mysql 命令安装mysql服务
-
利用net start mysql启动Mysql服务
-
利用mysql -u root -p 进入Mysql系统,需要使用刚才查到的初始密码,由于初始密码不好辨认,可以尝试复制,粘贴的方式。
-
利用ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘新密码’;
-
利用flush privileges退出;然后利用exit 回车退出
10.利用Navicat 15 for MySQL 软件可以对数据库进行管理
如果密码无法登录可以如下尝试:(来自资料,未曾尝试)
停止服务:net stop mysql
然后再开一个cmd窗口:mysqld --console --skip-grant-tables --shared-memory
启动服务器然后root就可以免密登录了(需要开2个CMD窗口)
更改root密码:
UPDATE mysql.user SET authentication_string=’’ WHERE user=‘root’ and host=‘localhost’;
刷新权限:flush privileges;
即出登录:exit 回车
这时可以关闭mysqld --console --skip-grant-tables --shared-memory窗口
启动Mysql服务:net start mysql
重新登录(密码是空):mysql -u root -p
更改密码:ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘新密码’;
给root用户赋予更高权限:GRANT ALL PRIVILEGES ON . TO ‘root’@‘localhost’ WITH GRANT OPTION;
刷新权限:flush privileges;
常用命令
启动服务net start mysql
停止服务net stop mysql