在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月第一版。
相关文章:
在win10里顺利安装了apache2.4.41和php7.4.29以及mysql8.0.33
一、安装apache和php 最近在学习网站搭建。其中有一项内容是在windows操作系统里搭建apachephp环境。几天前根据一本书的上的说明尝试了一下,在win10操作系统里安装这两个软件:apache2.4.41和php7.4.29,安装以后apche能正常启动,…...
云服务仿真:完全模拟 AWS 服务的本地体验 | 开源日报 No.45
localstack/localstack Stars: 48.7k License: NOASSERTION LocalStack 是一个云服务仿真器,可以在您的笔记本电脑或 CI 环境中以单个容器运行。它提供了一个易于使用的测试/模拟框架,用于开发云应用程序。主要功能包括: 在本地机器上完全…...
css实现不规则图片文字环绕效果
依旧,先上效果图,可以看见,文字环绕这个椭圆形的图片, 依旧是遵循开源精神,代码就直接放下面了 (点个赞或者给个评论啥的吧,我就发现我的文章全是光看不点赞,不评论的的) <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8&quo…...
Day-05 CentOS7.5 安装 Docker
参考 : Install Docker Engine on CentOS | Docker DocsLearn how to install Docker Engine on CentOS. These instructions cover the different installation methods, how to uninstall, and next steps.https://docs.docker.com/engine/install/centos/ Doc…...
激光雷达:自动驾驶的眼睛
激光雷达:自动驾驶的眼睛 文章目录 引言激光雷达的原理自动驾驶中的应用激光雷达的优势激光雷达的挑战结论结论 2023星火培训【专项营】Apollo开发者社区布道师倾力打造,包含PnC、新感知等的全新专项课程上线了。理论与实践相结合,全新的PnC培…...
Scratch3.0下载
通俗易懂,直接上链接 链接:https://pan.baidu.com/s/1n-QFEQWT8im8BHQu1wIjtg?pwd1016 提取码:1016...
多功能频率计周期/脉宽/占空比/频率测量verilog,视频/代码
名称:多功能频率计周期、脉宽、占空比、频率测量verilog 软件:Quartus 语言:Verilog 代码功能: 多功能频率计,可测量信号的周期、脉冲宽度、占空比、频率,语言为verilog,quartus软件设计仿真…...
img标签src动态绑定资源失败问题
img标签src动态绑定资源失败问题 需要采用require的方式进行 在 Vue 中,require 是一个通用的模块加载函数,用于在运行时(客户端或服务器端)引入模块。它通常用于加载 JavaScript 文件、JSON 数据、静态资源等。 组件使用…...
【自学笔记】网络安全——黑客技术
想自学网络安全(黑客技术)首先你得了解什么是网络安全!什么是黑客!!! 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队…...
Rust 技术文档及详细使用命令
概述 Rust 是一种现代、安全、并发、高性能的系统级编程语言。它与其他语言相比具有许多独特的特性,例如内存安全、所有权系统和生命周期等,使得它成为编写可靠和高效软件的理想选择。 本文档将介绍 Rust 的基本概念、语法、工具以及常用命令ÿ…...
建立HTTP代理IP池的技术和工具支持
建立HTTP代理IP池需要多种技术和工具支持,包括代理服务器、IP地址池、IP地址验证、数据库技术、网络安全技术、IP地址获取工具、IP地址验证工具、数据库管理工具、网络安全工具和自动化工具等。 代理服务器 代理服务器是HTTP代理IP池的核心组成部分,它可…...
【机器学习】数据格式csv/txt/pkl
文章目录 序言1. 数据存成csv、txt还是pkl2. pandas怎么读取csv、txt文件或者pkl文件3. 数据格式:pkl文件补充介绍 序言 用什么格式存储场景挖掘得到的数据目前为止用到过的一些数据存储格式,如proto/xml/json/txt/csv等,还有pkl,…...
unity脚本_Input鼠标键盘 c#
获取鼠标坐标 检测鼠标输入 如果在运行游戏场景中点击一下鼠标左键 检测鼠标抬起 选中即可 检测键盘按下 当前屏幕分辨率 注意:获取的是显示器的分辨率 获取设备屏幕宽高 屏幕休眠模式 窗口/全屏模式 移动设备屏幕转向...
解析‘找不到msvcp140.dll无法继续执行代码’这个问题的解决方法
大家好!今天我要和大家分享的主题是“msvcp140.dll丢失的解决方法”。我们都知道,在运行一些软件或游戏时,经常会遇到“msvcp140.dll丢失”的错误提示,这会让我们非常烦恼。那么,这个问题是什么原因引起的呢࿱…...
练[FBCTF2019]RCEService
[FBCTF2019]RCEService 文章目录 [FBCTF2019]RCEService掌握知识解题思路关键paylaod 掌握知识 json字符串格式,命令失效(修改环境变量)–绝对路径使用linux命令,%0a绕过preg_match函数,代码审计 解题思路 打开题目链接,发现…...
php实战案例记录(21)sprintf函数
在PHP中,sprintf()函数用于格式化字符串并返回一个字符串。它可以根据指定的格式对参数进行格式化,并将结果存储在一个字符串中。 sprintf()函数的语法如下: sprintf(format, var1, var2, ...)其中,format是一个包含格式说明符的…...
【数据结构-二叉树 九】【树的子结构】:树的子结构
废话不多说,喊一句号子鼓励自己:程序员永不失业,程序员走向架构!本篇Blog的主题是【子结构】,使用【二叉树】这个基本的数据结构来实现,这个高频题的站点是:CodeTop,筛选条件为&…...
七张图解锁Mybatis整体脉络,让你轻松拿捏面试官
前言 MyBatis是一款ORM(Object-Relational Mapping)框架,其主要用于将Java对象与关系数据库之间进行映射,凭借其轻量性、稳定性以及广泛的开源社区其受到了广大开发者的追捧。 那MyBatis为我们做了哪些事情呢?其实&a…...
力扣之删除有序数组中的重复项
力扣:26. 删除有序数组中的重复项 - 力扣(LeetCode) 方法:双指针法。 我的方法: class Solution { public:int removeDuplicates(vector<int>& nums) {int slow 0,fast;for(fast 0; fast < nums.size()…...
pnpm、npm、yarn 包管理工具『优劣对比』及『环境迁移』
前言 博主在开发前端网站的时候,发现随着开发的项目的逐渐增多,安装的依赖包越来越臃肿,依赖包的安装速度也是非常越来越慢,多项目开发管理也是比较麻烦。之前我就了解过 pnpm,但是当时担心更换包管理环境可能会出现的…...
【AntDesign】多环境配置和启动
环境分类,可以分为 本地环境、测试环境、生产环境等,通过对不同环境配置内容,来实现对不同环境做不同的事情。 AntDesign 项目,通过 config.xxx.ts 添加不同的后缀来区分配置文件,启动时候通过后缀启动即可。 config…...
Unix Network Programming Episode 78
‘getaddrinfo’ Function The gethostbyname and gethostbyaddr functions only support IPv4. The API for resolving IPv6 addresses went through several iterations, as will be described in Section 11.20(See 8.9.20); the final result is the getaddrinfo function…...
学习笔记(css穿透、vue-cookie、拦截器、vuex、导航守卫、token/Cookie、正则校验)
目录 一、记录 1、CSS穿透 2、输入框是否提示输入 3、插槽 #slot 4、v-deep深入改掉属性值 二、vue-cookie 1、官方文档 2、使用 三、拦截器 1、请求拦截器 2、响应拦截器 四、vuex对信息存取改 五、路由导航守卫 1、登录思路 2、设置白名单 六、Token与Cookie…...
Day4:Linux系统编程1-60P
我的学习方法是:Linux系统编程(看pdf笔记) Linux网络编程 WebServer 01P-17P Linux相关命令及操作 cp -a dirname1 dirname2 复制目录 cp -r dirname1 dirname2 递归复制目录 1 到目录 2 这里-a 和-r 的差别在于,-a 是完全复制…...
【HuggingFace】Transformers(V4.34.0 稳定)支持的模型
Transformer 4.43.40 版本是自然语言处理领域的一个重要工具包,为开发者提供了丰富的预训练模型资源,可以用于各种文本处理任务。在这个版本中,Transformer 支持了众多模型,每个模型都具有不同的优势和适用领域。下面是一个 Trans…...
oracle 导入数据泵常用语句
oracle常用语句 window10 导出导入数据泵文件导入数据泵文件导出数据泵文件 oracle表空间查询、剩余空间查询查询表空间大小及对应文件查询各个表空间大小扩充表空间 window10 导出导入数据泵文件 导入数据泵文件 首先将数据泵文件放在oracle安装得对应位置,例如&…...
tensorflow中的常见方法
1.tf.argmax(input,axis) tf.argmax(input,axis)根据axis取值的不同返回每行或者每列最大值的索引。 axis 0: 比较每一列的元素,将每一列最大元素所在的索引记录下来,最后输出每一列最大元素所在的索引数组。 test[0] array([1, 2, 3]) test[1] …...
【周末闲谈】“PHP是最好的语言”这个梗是怎么来的?
个人主页:【😊个人主页】 系列专栏:【❤️周末闲谈】 系列目录 ✨第一周 二进制VS三进制 ✨第二周 文心一言,模仿还是超越? ✨第二周 畅想AR 文章目录 系列目录前言最早的出处关于PHP语言优点缺点网络评价 总结 前言 …...
四位十进制数字频率计VHDL,仿真视频、代码
名称:四位十进制数字频率计VHDL,quartus仿真 软件:Quartus 语言:VHDL 代码功能: 使用直接测频法测量信号频率,测频范围为1~9999Hz,具有超量程报警功能 演示视频:四位十进制数字频…...
Unity实现设计模式——策略模式
Unity实现设计模式——策略模式 策略模式是一种定义一些列算法的方法,这些所有的算法都是完成相同的工作,只是实现不同。它可以通过相同的方式调用所有的算法,减少各种算法类与使用算法类之间的耦合。 策略模式的 Strategy 类层次为 Contex…...
南京建设教育网站/淘宝关键词排名查询网站
还记得WordPress诞生的第一天,该系统有多简单? 特别是周围没有很多基于jQuery的WordPess插件。 但是, 这些天来, WordPress开发人员为我们带来了很多jQuery插件,从而改善了这个出色的CMS! 因此,…...
公司网站建设服务公司/宁德市自然资源局
完毕Swift的语法关之后。来点实际的Task,第一个任务是写一个tableview,使用cocoaTouch里tableview这个经常使用的控件。 创建project。选择Swift语言 首先是用Obejctive-C写的最简单的tableview 点击下载源代码 然后是Swift写的tableview 点击下载源代码…...
网站开发技术协议怎么写/seo搜索引擎优化平台
图解CSS padding、margin、border属性 W3C组织建议把所有网页上的对像都放在一个盒(box)中,设计师可以通过创建定义来控制这个盒的属性,这些对像包括段落、列表、标题、图片以及层。盒模型主要定义四个区域:内容(content)、内边距(padding)、…...
宁波梅山建设局网站/搜索引擎优化的常用方法
CWinThread::m_pMainWnd该成员变量去存储你的线程主窗口对象。当和m_pMainWnd 相关的窗口被关闭后,MFC会自动终止你的线程。如果该线程是应用程序主线程,程序也将会被终止。如果该数据成员为NULL,应用程序CWinApp对象的主窗口将用来决定什么时…...
什么是自适应网站/东莞网站快速排名提升
将数据(如音频、视频、文本)变为图像结构,然后进行处理 输入二维像素,输出是 即使输入数据是经过旋转、缩放等处理的,输出仍然可以正确识别并进行输出 feature map 颜色越深,值越低 卷积核 如果卷积核形状与…...
网页制作 公司网站/搜索app下载安装
1、序列的方法 python中序列包含列表list、元组tuple、字符串str。 可以用于序列(表、元组、字符串)的内建函数: len(s) 返回: 序列中包含元素的个数min(s) 返回: 序列中最小的元素max(s) 返回: 序列中…...