在win10里顺利安装了apache2.4.41和php7.4.29以及mysql8.0.33

一、安装apache和php

最近在学习网站搭建。其中有一项内容是在windows操作系统里搭建apache+php环境。几天前根据一本书的上的说明尝试了一下,在win10操作系统里安装这两个软件:apache2.4.41和php7.4.29,安装以后apche能正常启动,但是php没有正常工作。这两个软件需要Microsoft Visual C++运行库的支持。这两个软件根据版本的不同,有的需要Microsoft Visual C++ 2012 运行库的支持,有的需要Microsoft Visual C++ 2015运行库或其他版本的支持。我的电脑里已经安装了Microsoft Visual C++ 2013运行库和Microsoft Visual C++ 2015-2019运行库,由于为了省事,我没有安装Microsoft Visual C++ 2012运行库,这导致没有选择书上php5.6.19版本,从而导致php没有正常工作,不能在游览器里打开php文件,不能打开phpinfo.php文件。当时搜索网上资料,得到的信息是版本不同,导致配置apache配置文件http.conf和php.ini文件不正确,从而导致php不能正常工作。

最近找了一本书,书名是《PHP7从入门到精通》。这边书是2019年出版的,使用了php7.2版本。该书的第二章讲了获得PHP安装资源包,在windows10里安装IIS和PHP,以及在windows10里安装apache和PHP 。根据第二章里内容,按照安装说明,顺利安装了这两个软件,这两个软件能正常工作。

电脑CPU是64位CPU,windows10 是家庭版64位。

下载的apache是:php-7.4.29-Win32-vc15-x64.zip,从www.apache.org推荐的编译后文件下载网站之一 www.apachelounge.com网站上下载。

下载的PHP是:httpd-2.4.41-win64-VC14.zip,从www.php.net网站上下载。

配置与安装一共有好几步。

第一步:下载PHP软件,下载apache软件。

第二步:新建子目录d:\web\apache2.4\,将apache压缩文件解压到d:\web\apache2.4\。新建子目录d:\web\php7.4\,解压缩PHP压缩文件到d:\web\php7.4\子目录下。解压以后两个子目录的内容如下图所示。

第三步:配置apche配置文件 .\conf\httpd.conf

修改参数SRVROOT,它会在该文档多处用到,DocumentRoot用到了该参数。

Define SRVROOT "d:\web\Apache2.4"

#参数DocumentRoot如下所示。该参数的值可以根据实际情况进行修改。

DocumentRoot "${SRVROOT}/htdocs"

添加如下几行

LoadModule php7_module "d:\web\php7.4\php7apache2_4.dll"

AddType application/x-httpd-php .php

AddType application/x-httpd-php .html

PHPIniDir "d:\web\php7.4\php.ini"

第四步:将PHP安装子目录的php.ini-development 复制并改名为php.ini 。

第五步:修改PHP配置文件php.ini 。

4.1 修改下方文本里的最后一行。

; Directory in which the loadable extensions (modules) reside.

; http://php.net/extension-dir

;extension_dir = "./"

; On windows:

;extension_dir = "ext"

将前面的分号去掉,并修改成PHP安装目录。改成以后如下所示。

extension_dir = "d:\web\php7.4\ext"

4.2 去除参数值扩展前的分号。去除以后如下所示。这些行是连续排列的。其中有四个列外,行首保持带分号。

extension=bz2

extension=curl

;extension=ffi

;extension=ftp

extension=fileinfo

extension=gd2

extension=gettext

extension=gmp

extension=intl

extension=imap

extension=ldap

extension=mbstring

extension=exif ; Must be after mbstring as it depends on it

extension=mysqli

extension=oci8_12c ; Use with Oracle Database 12c Instant Client

extension=odbc

extension=openssl

extension=pdo_firebird

extension=pdo_mysql

extension=pdo_oci

extension=pdo_odbc

extension=pdo_pgsql

extension=pdo_sqlite

;extension=pgsql

;extension=shmop

第六步:安装apache 。

用管理员身份打开command命令行窗口,在命令行窗口里用命令安装apache。在这里也能卸载apache。

输入:d:\

输入:cd web\apache2.4\bin

输入:httpd -k install

会安装apache。要卸载apache,则输入命令:httpd -k uninstall 。

第七步:启动apache 。

一种方法是点击d:\web\apache2.4\bin\ApacheMonitor.exe,运行该程序,该程序会在右下角出现一个图标,左键点击该图标,然后点击start,启动apache 。

另一种方法麻烦一些,一管理员身份打开command命令行窗口,然后输入d:\,接着输入: cd web\apache2.4\bin ,然后输入 httpd -k start ,就能启动apache 。

第八步:测试PHP是否正常安装。

在d:\web\apache2.4\htdocs\子目录里用记事本编辑新文件phpinfo.php,在该文件里加入一行:

<?php phpinfo(); ?>

然后保存该文件。

接着在游览器里输入:localhost/phpinfo.php, 能打开php信息界面说明正常安装了PHP 。

二、安装mqsql

根据书上的说明,到mysql网站下载mysql。mysql有多个版本。有5.7的版本,有8.0.33的版本,还有很多其他版本。从尝试的角度,选择了最新版8.0.33。该zip文件有280多M,下载比较快,大约十分钟下载完成。然后新建子目录D:\web\mysql8.0,接着将它解压缩到新建的子目录,然后用管理员身份打开command命令行窗口,依次输入如下命令:

d:

cd web\mysql8.0\bin

mysqld.exe -install

安装MySQL。一般能顺利安装。如果需要卸载数据库的话,输入如下命令:

mysqld.exe -remove

接下来初始化数据库,输入如下命令:

mysqld.exe --initialize-insecure

初始化数据库。然后启动mysql服务,在该命令行窗口里输入命令:net start mysql 。要停止mysql服务,则在该命令行窗口里输入命令:net stop mysql 。

然后在命令行窗口访问mysql。输入命令:mysql -u root 。就能登录mysql。接着给mysql的root用户设置密码,输入命令:set password for root@localhost = 'xxyyzz' 。其中xxyyzz请修改成你想设置又能记住的密码。设置完以后要退出mysql,输入命令:exit 。然后输入重新用新密码登录MySQL,在命令行窗口输入命令:mysql -u root -p ,接着在新提示行里输入刚设置的密码,就能再次登录mysql。

参考资料

1、《PHP7从入门到精通》,张工厂,刘玉萍等等编著,清华出版社出版,2019年1月第二版。

2、《PHP+MySQL网站开发项目式教程》,传智播客编著,人民邮电出版社,2016年8月第一版。

相关推荐
BingoGo2 小时前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack2 小时前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack1 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo1 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
JaguarJack2 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel
郑州光合科技余经理3 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
QQ5110082853 天前
python+springboot+django/flask的校园资料分享系统
spring boot·python·django·flask·node.js·php
WeiXin_DZbishe3 天前
基于django在线音乐数据采集的设计与实现-计算机毕设 附源码 22647
javascript·spring boot·mysql·django·node.js·php·html5
longxiangam3 天前
Composer 私有仓库搭建
php·composer
上海云盾-高防顾问3 天前
DNS异常怎么办?快速排查+解决指南
开发语言·php