PHP 8

一、下载

官网:PHP For Windows: Binaries and sources Releases

切记要下载Thread Safe版本,不然后面不能够连接Apache服务

 

二、安装

1、将该文件解压到(D:\PHP\)

php.ini.development文件的文件名改为php.ini(这里推荐先复制备份一下php.ini.development文件)

之后在解压路径里面打开CMD,并运行如下的命令

php.exe -v

这里会输出版本号,标明可以运行

配置环境变量

将解压路径添加到环境变量当中
重启电脑,在随机的一个路径下启动CMD窗口,运行如下命令

php -v

输出版本号,到这标明了PHP已经正确安装

 

三、错误 缺少vc运行库

解决方式
原因是PHP 8.0需要用到Visual Studio 2019的Microsoft Visual C ++ Redistributable工具,需要访问下载 Windows 版和 Mac 版 Visual Studio 2019进行下载

安装完毕从新启动即可

Apache 2.4 安装

下载

去官网下载:https://www.apachelounge.com/download/

这里选择64位进行安装(不会还真的有人的服务器运行着32位系统吧...)

就是Apache 2.4.46 Win64这个选项

安装

下载完成之后,解压文件

注意啊,这里有两种解压方法,一个是随意找一个地方解压,另外一个是直接解压到C盘的根目录。

这里我推荐直接解压到C盘的根目录,最简单,不需要修改配置文件就可以运行Apache服务器,非常适合新手来操作,至于占用C盘空间这个问题...我的服务器只有一个分区所以不用考虑这个问题。

这里需要注意一点!!!一定要把你的安装路径中的""换为"/",不然无效的!!!

2.Apache HTTP Serverapache24配置

用编辑器(这里用sublime3)打开E:\Apache24\conf目录下的httpd.conf文件

  2.1修改apache的根目录:ServerRoot "E:/Apache24"

 2.2  修改域名配置:ServerName 127.0.0.1:80  (注意:把ServerName前的#号去掉,)

 2.3 修改改网站根目录(改两行)配置DocumentRoot "E:/Apache24/Workspace/www"

(注意:www文件夹为网站的根目录,需要自己创建,否则会报错。同时,如下图所示,第246行也需要修改)

www文件夹自己建的,路径为:

  2.4配置欢迎页(首页),DirectoryIndex index.html 改为 DirectoryIndex index.php index.html index.htm

1
2
3
<IfModule dir_module> 
    DirectoryIndex index.php index.html index.htm
</IfModule> 

如下:

 2.5加载php模块

在 apache2.4/conf/httpd.conf 尾部加入

#php8 support
#打开这个模块才能引入外部模块
LoadModule php_module "D:/softWare/php/php-8.2.0-Win32-vs16-x64/php8apache2_4.dll"
AddType application/x-httpd-php .php .html .htm
# 可以用下边的FilesMatch语句代替上一行
<FilesMatch "\.php$">
setHandler application/x-httpd-php
</FilesMatch>
#configure the path to php.ini
PHPIniDir “D:/softWare/php/php-8.2.0-Win32-vs16-x64”

LoadModule headers_module modules/mod_headers.so
Header set Access-Control-Allow-Origin: “*”
Header set Access-Control-Allow-Methods: “GET,POST,PUT,DELETE,OPTIONS”
Header set Access-Control-Allow-Headers: “Content-Type”

ErrorDocument 404 /index.html

  2.6最后一步,检查刚刚配置的有没有错,在dos窗口(“win+r”快捷键输入cmd)里进入到apache安装目录apache24/bin 输入:httpd.exe -t 

如果显示如下图则表示apache配置文件已经修改无误(上面的2.1-2.5的操作没错):

.安装和启动Apache:

    3.1.安装服务:进入dos窗口(“win+r”快捷键输入cmd).进入到apache安装目录apache24/bin 输入  httpd.exe -k install

  (注意:httpd.exe -k install -n  是错的,httpd.exe -k install 或者 httpd.exe -k install -n 服务名  才是对的,如果按httpd.exe -k install -n

注册apache2.4服务的话,虽然可以注册,但是后期会因为这个导致无法启动服务,笔者就是因为这个导致无法启动apache,卡在这里两天。。羞涩,,)

上边图中显示注册apache服务成功,你可以到系统的服务那里看下。

注意:Errors reported here must be corrected before the service can be started.不是错误而是提示你如果这行下边出现错误则解决错误后再启动!

若想删除服务,可以继续看,否则可以跳过以下:

成功安装服务后,可以在系统服务中看到Apache2.4,如果想删除此服务,进入到apache安装目录E:\Apache24\bin,

方法一:可以在dos窗口中输入命令: sc delete 服务名(服务名在服务的属性中看,可以参考

方法二(推荐):通过删除服务命令: httpd.exe -k uninstall -n Apache2.4(服务名)

    3.2.启动服务:在dos窗口中进入E:\Apache24\bin目录,输入httpd.exe -k start   或者  net start apache2.4

 

或者到apache安装目录 E:\Apache24\bin下 双击ApacheMonitor.exe,然后点击start,随后就可以在系统服务中看到apache2.4服务被启动了

启动服务的过程中如果启动失败的话,可以参考博文:解决Apache/PHP无法启动的问题

添加 php 项目

修改虚拟主机配置 D:\httpd-2.4.46-win64-VS16\Apache24\conf\extra\httpd-vhosts.conf

# 这里的端口需要与监听端口一致
<VirtualHost *:8080>
ServerAdmin xmsb.example.com
ServerName www.xmsb.com
DocumentRoot "/usr/local/apache/htdocs"
ErrorLog "logs/wherein.com-error.log"
CustomLog "logs/wherein.com-access.log" combined
<Directory "/usr/local/apache/htdocs">
Options FollowSymLinks IncludesNoExec Indexes
DirectoryIndex index.html index.htm index.php
AllowOverride all
Require all granted
</Directory>
</VirtualHost>

<VirtualHost *:8080>
# 管理员邮箱地址
ServerAdmin xmsb.example.com # 访问域名
ServerName www.xmsb.com # 项目入口文件夹
DocumentRoot "/usr/local/apache/htdocs" # 错误日志文件路径
ErrorLog "logs/wherein.com-error.log" # 日志文件路径,并指明日志文件格式 combined/common
CustomLog "logs/wherein.com-access.log" combined # 设置权限
<Directory "/usr/local/apache/htdocs">
# Options参数如下:
# Indexes 允许目录浏览
# MultiViews 允许内容协商的多重视图
# All 包含除MultiViews之外的所有特性,如果没有Options语句,默认为All
# ExecCGI 允许在该目录下执行CGI脚本
# FollowSymLinks 可以在该目录中使用符号连接
# Includes 允许服务器端包含功能
# IncludesNoExec 允许服务器端包含功能,但禁用执行CGI脚本
Options FollowSymLinks IncludesNoExec Indexes # 访问目录后进入的默认文件
DirectoryIndex index.html index.htm index.php # 位于每个目录下.htaccess文件中的指令类型。none为禁止使用.htaccess文件
AllowOverride all # Apache-2.4 访问权限
# Require all granted 允许所有来源的访问
# Require all denied 拒绝所有来源的访问
# Require host xmsb.com 允许特定域名访问
# Require ip 192.168.1 192.168.2 允许特定IP段访问
Require all granted
</Directory>
</VirtualHost>

PHP 8 Apache 2.4的更多相关文章

  1. Apache执行Python脚本

    由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...

  2. Apache Ignite之集群应用测试

    集群发现机制 在Ignite中的集群号称是无中心的,而且支持命令行启动和嵌入应用启动,所以按理说很简单.而且集群有自动发现机制感觉对于懒人开发来说太好了,抱着试一试的心态测试一下吧. 在Apache ...

  3. Apache Ignite高性能分布式网格框架-初探

    Apache Ignite初步认识 今年4月开始倒腾openfire,过程中经历了许多,更学到了许多.特别是在集群方面有了很多的认识,真正开始认识到集群的概念及应用方法. 在openfire中使用的集 ...

  4. Apache 与 php的环境搭建

    Apache和PHP的版本分别为: httpd-2.4.9-win64-VC11.zip php-5.6.9-Win32-VC11-x64.zip 下载地址: php-5.6.9-Win32-VC11 ...

  5. Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

    学习架构探险,从零开始写Java Web框架时,在学习到springAOP时遇到一个异常: "C:\Program Files\Java\jdk1.7.0_40\bin\java" ...

  6. 【开发软件】 在Mac下配置php开发环境:Apache+php+MySql

    本文地址 原文地址   本文提纲: 1. 启动Apache 2. 运行PHP 3. 配置Mysql 4. 使用PHPMyAdmin 5. 附录   有问题请先 看最后的附录   摘要: 系统OS X ...

  7. Apache Cordova开发Android应用程序——番外篇

    很多天之前就安装了visual studio community 2015,今天闲着么事想试一下Apache Cordova,用它来开发跨平台App.在这之前需要配置N多东西,这里找到了一篇MS官方文 ...

  8. java.lang.NoSuchFieldError: org.apache.http.message.BasicLineFormatter.INSTANCE

    Android发出HTTP请求时出现了这个错误: java.lang.NoSuchFieldError: org.apache.http.message.BasicLineFormatter.INST ...

  9. Ubuntu下配置apache开启https

    一.HTTPS简述随着网络的日常,信息安全越来越重要,传统的网站都是http协议明文传输,而HTTPS协议是由SSL+HTTP协议构建的可进行加密传输.身份认证的网络协议,比http协议安全. 那ht ...

  10. 使用apache自带日志分割模块rotatelogs,分割日志

    rotatelogs 是 Apache 2.2 中自带的管道日志程序,参数如下(参见:http://lamp.linux.gov.cn/Apache/ApacheMenu/programs/rotat ...

随机推荐

  1. element-ui下表格头部字段hover显示tips信息

    记录一下表格头部加hover之后显示tips信息循环,或单独的el-table-column都可以哦 <el-table-column             prop="name&q ...

  2. 微信APP支付后台配置

    1.申请商户号 ,申请成功后去配置证书APIv2 https://pay.weixin.qq.com/index.php/core/cert/api_cert#/    --MchKey  和MchI ...

  3. EF Core级联保存时DbUpdateConcurrencyException报错异常

    出现改报错异常的原因是,EF Core不支持级联更新时添加新的子项!!! 如果主体子项添加一个新内容,EF Core则认为这个内容原本已经存在了(实际是你新增的),只不过并发冲突中被其他进程删除掉了, ...

  4. notepad++ 配置Java 环境

    (1)设计新建文件的类型与编码方式: (2)安装插件NppExec (3)插件配置 (4)编辑并配置命令: 找到Advance Options; 在红中找到Java,点击 (5)运行结果查看: (6) ...

  5. Python的100个小技巧

    文章转自:https://mp.weixin.qq.com/s/w5do8QYMkO_gLgPupDdJqg 分享100个Python小技巧,帮助大家更好的了解和学习Python. ▍1.for循环中 ...

  6. 微积分 II 笔记

    5.1 定积分的概念 定义 定积分是积分的一种,是函数 \(f(x)\) 在区间 \([a,b]\) 上积分和的极限 若 \(f(x)\) 在 \([a, b]\) 有界,在 \([a, b]\) 上 ...

  7. 简单的关键词查找实验(基于C语言)

    准备 书名数据库的阵列表示 关键字 书籍 B1 B2 B3 B4 B5 B6 B7 algebra 1 1 1 1 1 1 0 application 1 0 1 1 1 1 0 elementary ...

  8. Python的入门学习Day 28~30——form”夜曲编程“

    Day 28 in Day 29 time: 2021.8.26. ​ 时间模糊了界限,虽我日渐走远.转眼而过的二十多天,既留下了夏天在沙滩上的足迹,同时也为黄金色的秋日铺上留白的画卷.键盘敲时,熟悉 ...

  9. B - Yet Another Palindrome Problem

    B - Yet Another Palindrome Problem 思路: 给一个长为n(≤5000≤5000)的数组,问是否存在一个长度至少为3的子序列是回文的.回文的定义是把序列reverse, ...

  10. linux 上使用pm2启动nodejs服务

    1.安装pm2: npm install -g pm2 2.在启动文件夹内新建文件processes.json: {   "apps": [     {       "n ...