PHP 8 Apache 2.4
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 Server(apache24)配置
用编辑器(这里用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>