PHP搭建开发环境(Windows系统)

要搭建一个完整的PHP动态网站,离不开操作系统、Web服务器、数据库、和PHP软件。

虽然有不错方便的方式,比如使用phpstudio等等等等许多面板都是非常快速不错的方式,但是这里是教会大家如何配置而不只是依赖别人整合好的面板软件,有时就会发挥出用处。

目录

1、Visual Studio Code代码编辑器

2、 安装Apache

3、启动Apache

4、安装PHP

5、配置PHP

6、在Apache中引入PHP模块

7、重新启动Apache


以下是本文章的所采用的大概配置。

  • 操作系统:Windows11
  • Web服务器: 本文章采用Apache
  • 数据库: MySQL
  • PHP软件:用于解析PHP脚本文件

1、Visual Studio Code代码编辑器

这是一个非常好用的代码编辑器;

这是他的官网:Visual Studio Code - Code Editing. Redefined

进入以后是这样的界面

点击中间蓝色的“Download for Windows”,就可以开始下载安装了,过程非常简单。

2、 安装Apache

我们先在C盘里面创建一个文件夹,名称叫什么都可以,然后将下载的Apache和PHP软件全丢里面,记得

一定要在C盘!!

Apache官网:Welcome! - The Apache HTTP Server Project

先进入官网,然后按照图片中标注的图框走:

接下来可以选择64位和32位,看自己系统选。

就可以下载啦!!

下载完以后一个.zip文件,我们将他解压到之前我们在C盘创建的文件夹里。

打开Apache所在的文件夹

其中htdcs是默认的网站根目录网页文档目录,modules是Apache支持的动态加载模块所在的目录。

修改配置文件,配置安装路径。配置的文件是在Apache文件的conf/httpd.conf文件,使用VS Code编辑器打开它,找到第37行:

Define SRVROOT "c:/apache24"

上述代码用来配置Apache的安装路径,将路径修改为你自己安装的路径,比如我的是:

Define SRVROOT "C:\web\apache2.4"

按住“Ctrl + F”组合键,搜索“ServerName”,找到:

#ServerName www.example.com:80

将开头的“#”去掉,Apache通过命令行来安装

我们打开“开始”菜单,输入“命令提示符”,点击“以管理员身份运行”。

输入:

cd C:\web\apache2.4\bin

这里  cd  是一个指令,后面接的是你的 apache 的bin目录

复制他的路径然后放上去;

接着输入:

httpd -k install -n Apache2.4

在上述命令中,httpd   表示Apache服务程序  httpd.exe ; “ -k install ” 表示将Apache安装为Windows系统的服务项, “-n Apache2.4 ”表示将Apache服务的名称设置为 Apache2.4 

如果需要写在Apache,可以使用以下命令:

httpd -k uninstall -n Apache2.4

3、启动Apache

进入bin文件夹,找到:

这个后缀为.exe的文件,双击打开即可

我们可以去浏览器里输入

http://localhost

然后回车,出现如下界面说明安装成功

4、安装PHP

PHP既可以独立运行,也可以作为Apache的模块来运行,下面将会讲解如何将PHP安装为Apache的模块。

PHP官网:PHP: Hypertext Preprocessor

进入以后如上图所示,点击红色方框框起来的“Download”按钮;

进入下图,还是点击用红色方框框起来的地方下载:

然后进入如下界面,仍旧跟着红色方框走:

就开始下载了。

还记得之前安装Apache的时候不是创建过一个文件夹嘛,我们往其中放入了Apache,现在我们往里面放入PHP。

我们下载好了PHP文件,我们可以将它解压在这个文件夹。

看,这就是我们之前创建的文件夹里所有的内容了,我把PHP的压缩包也放在了这里,不过无所谓;

现在这个文件夹里有了:

1、Apache服务软件

2、PHP软件。

你也来检查一下吧!

5、配置PHP

对于初学者来说,推荐使用开发环境配置。将  php.ini-development 文件复制一份,并重新粘贴更名为“php.ini”,作为PHP的配置文件。

打开php.ini,搜索文本 (ctrl + F)   “ extension_dir ”  ,  找到如下配置:

;extension_dir="ext"

配置文件前面的  “ ;” 分号是用来注释的,也就是在打上了这个符号就意味着这行代码不生效

然后在下面一行  添加 以下代码:

extension_dir="C:\web\php-8.2.24-Win32-vs16-x64\ext"

这里的“C:\web\php-8.2.24-Win32-vs16-x64\ext”填写的是你的php的ext文件夹的路径,双击你安装好的php文件夹就能看到了:

然后搜索( CTRL + F )“date.timezone”,找到如下配置:

;date.timezone=

更改,配置后如图所示,就是以下代码:

date.timezone =PRC

记得去掉 “ ; ” 开头的分号!!

6、在Apache中引入PHP模块

打开Apache的配置文件,也就是"C:\web\Apache24\conf\httpd.conf"的这个httpd.conf文件,

在第185行(前面有一些LoadModule配置)的位置将PHP中的Apache2.4模块引入,具体如下:

LoadModule php_module "C:/web/php-8.2.24-Win32-vs16-x64/php8apache2_4.dll"
<FilesMatch "\.php$">SetHandler application/x-httpd-php
</FilesMatch>
PHPIniDir "C:/web/php-8.2.24-Win32-vs16-x64"
LoadFile "C:/web/php-8.2.24-Win32-vs16-x64/libssh2.dll"

上面第一行表示将PHP作为Apache的模块来加载,

第2~4行用于配置php扩展名的文件,将其交给PHP来处理,

第5行指定了PHP初始化文件php.ini的路径

第6行表示加载PHP目录中的libssh2.dll文件,确保PHP中的cURL扩展能够正确的加载。

也是就是说最后一行的文件路径就是PHP里的  libssh2.dll文件的路径

接着在配置文件中搜索DirectoryIndex,找到以下代码:

<IfModule dir_module>DirectoryIndex index.html
</IfModule>

这是配置初始的索引页面,我们在后面添加上index.php,如下:

<IfModule dir_module>DirectoryIndex index.html index.php
</IfModule>

7、重新启动Apache

修改Apache配置文件后,需要重新启动Apache,才能使配置生效。先单击状态栏右下角的Apache图标,选择Apache2.4,在控制菜单中点击“Restart”就可以重新启动,如下:

8、测试PHP模块是否安装成功

可以在在Apache的站点目录下 C:\web\Apache24\htdocs ,也就是如下图这个文件夹:

在这个文件夹里,使用最先下好的Visual Studio Code编辑器创建一个名为index.php的文件夹。

并写入以下内容:

<?phpphpinfo();?>

保存后接着打开浏览器,输入  http://localhost/index.php   ,就可以看到下面的画面。、

如果到达这一步;

恭喜你,已经成功配置好了PHP的基础开发环境!!

---------

本文章到此结束

希望能帮助到你

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/470330.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开源 2 + 1 链动模式、AI 智能名片、S2B2C 商城小程序在用户留存与品牌发展中的应用研究

摘要&#xff1a;本文以企业和个人品牌发展中至关重要的用户留存问题为切入点&#xff0c;结合管理大师彼得德鲁克对于企业兴旺发达的观点&#xff0c;阐述了用户留存对品牌营收的关键意义。在此基础上&#xff0c;深入分析开源 2 1 链动模式、AI 智能名片、S2B2C 商城小程序在…

SpringBoot后端解决跨域问题

1.全局方式 新建一个conifg配置类&#xff0c;内容如下&#xff1a; Configuration public class CorsConfig implements WebMvcConfigurer {Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**")//是否发送Cookie.allowCrede…

「数据要素」行业简报|2024.11.上刊

纵观数据要素行业动态&#xff0c;洞察行业风向&#xff0c;把握行业脉搏&#xff01; 一、政策发布 1、《山东省公共数据资源登记管理工作规范(试行)》公开征求意见 11月7日&#xff0c;为认真贯彻落实《中共中央办公厅 国务院办公厅关于加快公共数据资源开发利用的意见》《…

什么是RAG? LangChain的RAG实践!

1. 什么是RAG RAG的概念最先在2020年由Facebook的研究人员在论文《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》中提出来。在这篇论文中他们提出了两种记忆类型&#xff1a; 基于预训练模型&#xff08;当时LLM的概念不像现在这么如日中天&#xff0…

Vite初始化Vue3+Typescrpt项目

初始化项目 安装 Vite 首先&#xff0c;确保你的 Node.js 版本 > 12.0.0。然后在命令行中运行以下命令来创建一个 Vite Vue 3 TypeScript 的项目模板&#xff1a; npm init vitelatest进入项目目录 创建完成后&#xff0c;进入项目目录&#xff1a; cd vue3-demo启动…

nginx部署H5端程序与PC端进行区分及代理多个项目及H5内页面刷新出现404问题。

在项目中会碰见需要在nginx代理多个项目&#xff0c;如果在加上uniapp开发的H5端的项目&#xff0c;你还要在nginx中区分PC端和手机H5端&#xff0c;这就会让人很头大&#xff01;网上大部分的资料都是采用在nginx的conf配置文件中添加区分pc和手机端的变量例如&#xff1a;set…

软件测试项目实战

软件测试是使用人工或者自动的手段来运行或者测定某个软件系统的过程&#xff0c;其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。 在软件投入使用前&#xff0c;要经过一系列的严格测试&#xff0c;才能保证交付质量。 一、引言 1.编写目的 本文档…

2024开发者浏览器必备扩展,不允许还有人不知道~

在开发过程中&#xff0c;优秀的扩展工具能够极大提升我们的工作效率&#xff0c;简化工作流程&#xff0c;并使得在浏览器中的开发和调试变得更加便捷。 根据市场占比&#xff0c;Chrome、Safari、Edge、Firefox、Opera 是前五大浏览器&#xff0c;其中Chrome浏览器占据了领先…

分享一个傻瓜式一键启动的加速器

主要发现开通一个号能电脑手机互通&#xff0c;原来电脑手机各一个加速器钱包在滴血。。。一个月也很便宜差不多二十多 链接放这了&#xff0c;有需要自提&#xff1a;首页-小熊加速器http://xxjsq.co/ytfa

TDesign了解及使用

文章目录 1、概述2、快速开始2.1使用 npm 安装2.2通过 浏览器引入 安装2.3、使用 3、简单案例3.1 路由创建3.2、 页面创建3.3、 Table组件3.4、序号展示3.5、 图片展示及预览3.6、 性别字段处理 1、概述 TDesign 是腾讯推出的设计系统&#xff0c;旨在提供一致的设计语言和视觉…

11Java面向对象高级(篇2,Java程序的核心套路!!!!)

更多java知识请点击上面专栏&#xff01;&#xff01;&#xff01; 修道之始&#xff1a; 01Java基础入门(纯小白也能入门&#xff0c;速通Java&#xff0c;知识点归纳超级全面&#xff01;&#xff01;&#xff01;2024版后端成仙起始篇&#xff01;&#xff01;&#xff01;…

定时器(QTimer)与随机数生成器(QRandomGenerator)的应用实践——Qt(C++)

一、QTimer与QRandomGenerator &#xff08;一&#xff09;QTimer&#xff08;定时器&#xff09;[2] QTimer类为定时功能提供了一个高级编程接口。在使用QTimer时&#xff0c;实例化一个QTimer对象并将其timeout()发射信号与合适的信号槽相连接。通过调用QTimer的start()函数…

翼鸥教育:从OceanBase V3.1.4 到 V4.2.1,8套核心集群升级实践

引言&#xff1a;自2021年起&#xff0c;翼鸥教育便开始应用OceanBase社区版&#xff0c;两年间&#xff0c;先后部署了总计12套生产集群&#xff0c;其中核心集群占比超过四分之三&#xff0c;所承载的数据量已突破30TB。自2022年10月&#xff0c;OceanBase 社区发布了4.2.x 版…

AI绘画经验(stable-diffusion)

提示词理解 总的 AI绘画的优点是【想象力】&#xff0c;而不是自然语言的精确描述。 AI绘画只能控制【主体】和【风格】&#xff0c;姿势&#xff0c;表情&#xff0c;装饰&#xff0c;手指都太过于详细了。这也是【人类画师的魅力】 准确描述是徒劳的&#xff0c;只能通过【…

使用支付宝沙箱完成商品下单

使用支付宝沙箱完成商品下单 一&#xff1a;效果展示&#xff1a; 二&#xff1a;代码实现 1&#xff1a;准备工作&#xff1a; 申请支付宝沙箱账户&#xff1a; 登录 - 支付宝 然后要下载密钥密钥工具来生成密钥&#xff1b; 2&#xff1a;流程分析&#xff1a; 先是用户…

Linux设置socks代理

公司里绝大多数主机已经禁止外网访问&#xff0c;仅保留一台主机设置socks作为代理服务器。如下为对socks这一概念的学习整理 什么是socks 是OSI模型下会话层的协议&#xff0c;位于表示层与传输层之间&#xff0c;作用是&#xff1a; exchanges network packets between a c…

以往运维岗本人面试真题分享

以下是本人面试运维岗的一些面试经历&#xff0c;在此做个记录分享 目录 TCP/IP三次握手 IPtables IPtables四表五链都是什么&#xff1f; nat端口如何做&#xff1f; 开放本机的80端口该如何做&#xff1f; 如何在单用户模式下引导Centos&#xff1f; nginx轮询模式都有…

【Hadoop实训】Hive 数据操作①

目录 一、准备文件 1、创建表 2、 数据映射 二、HIVE的数据操作 1、基本查询 a、全表查询 b、选择特定字段查询 c、查询员工表总人数 d、查询员工表总工资额 e、查询5条员工表的信息 2、Where条件查询 a、查询工资等于5000的所有员工 b、查询工资在500到1000的员工信息 …

3.5【数据库系统】ER图

2、实体之间的关系 下面主要针对两个实体间的关系进行介绍 &#xff08;a&#xff09;一对一联系&#xff08;1:1&#xff09;如班级和班长&#xff0c;一个班级只有一个班长&#xff0c;一个班长只能在一个班级任职。 &#xff08;b&#xff09;一对多联系&#xff08;1&#…

笔记 | image may have poor performance,or fail,if run via emulation

在Docker Desktop中现象如图&#xff1a; 当你运行 AMD64 平台代码时&#xff08;Intel 和 AMD 芯&#xff09;&#xff0c;你的 Mac 必须模拟其CPU架构&#xff08;因为你自身是ARM&#xff09;。这通常会非常吃性能。 Docker Desktop 警告你在模拟 Intel/AMD x64 CPU 时性能可…