windows下Apache安装配置+php解释器加载+常见问题汇总

        国王们以世袭的权柄和虚名逼你下跪,无产者先驱要你站起来,用战无不胜的知识武装自己。

        接了个PHP项目,又算开了一个新坑,技多不压身,强大了自己才能战胜敌人与走狗。

        前情提要:配置php环境,Windows环境下安装配置Apache24。

        需要前置操作:下载配置php环境,创建php.ini配置文件(从php.ini-development复制一份然后改个名字),修改php.ini内路径配置,为php添加系统变量。

        前置操作参考文章:windows下apache简单配置php解释器_lifejump的博客-CSDN博客

        这篇文章第二小节之前值得参考,但是第三节绕了个弯。

        官网地址:Download - The Apache HTTP Server Project 

 

        自己电脑截图有水印很烦,借用别人的截图。配置win64位的,点击最小的红框就是压缩包了,右边那个也能下,但是看样子是德国镜像,有的网络环境应该下载不了

1、解压到与php父文件夹同级目录下

 

2、修改Apache24\conf\httpd.conf文件:

        ①服务器根目录修改:

Define SRVROOT "D:\PHP\Apache24"
Define PHPDIR "D:\PHP\php"
ServerRoot "${SRVROOT}"

         上边的地址改成自己Apache文件夹地址和php文件夹地址

        ②服务监听端口修改

        这个listen端口默认80,有很大概率会被占用,建议自己找一个合适的空闲的端口。 

        如果这个端口被占用,则接下来启动时可能报错:

        ③修改联系方式和服务器名

# 这些配置为虚拟主机<VirtualHost>配置的默认值
# 如有相同的配置项则将被<VirtualHost>中的配置覆盖
# 服务器管理员联系邮箱,该信息将会显示在一些输出信息中,比如返回给客户端的错误信息
ServerAdmin postmaster@localhost

# 服务器绑定的域名和端口,用于标识服务器名称
# 如果没有域名可以用IP或localhost标识,不配置该项启动服务时会发出警告信息
ServerName localhost:8010

         这个联系方式不一定需要修改,看看以后用不用得到了。

        ④修改默认访问文件

        这个如果没有自己的页面可以不用改,本身会自带一个测试页面index.html以供服务测试。

<IfModule dir_module>
    # 设置请求目录时,Apache默认提供的文件
    DirectoryIndex index.html index.php 
</IfModule>

        ⑤修改 加载动态共享对象

         只是展示一下这部分配置长啥样,内容不重要,图里的都是默认的。

        添加支持php的配置:

LoadModule php_module 'D:/PHP/php/php8apache2_4.dll'
PHPIniDir "D:/PHP/php"

        上边那个是php文件夹里的文件,如果找不到,请检查php下载的对不对。注意如果是php7或之前的版本,LoadModule后边应该写php7_module(这个数字7匹配你的php版本),在php8之后就不用写版本号了。

        下面那个是php.ini文件所在文件夹路径。

          ⑥MIME类型与文件处理

        找到<IfModule mime_module>这部分配置块:

          添加上图最后一条配置:

    AddType application/x-httpd-php .php .htm .html

        后边要写.htm .html是为了在html环境下服务器也能解析php代码,可以视情况不加。

        ⑦拓展:关于这些Apache的配置内容都是什么意义,请参考这篇优秀博文:

Apache2.4 配置解析_apache24配置_Captain_RB的博客-CSDN博客基于XAMPP Version 8.1.6的默认配置,对Apache2.4常用配置项进行解析说明https://blog.csdn.net/Captain_RB/article/details/126566755

3、以管理员身份在当前目录启动终端,执行:httpd -k install

        安装成功后会显示提示信息,如果安装失败建议检查第2-①步中配置的地址是否有误,没错误但是安装失败建议再百度一下。

4、运行Apache,执行: net start Apache2.4

         如果出现报错,请检查第二-②步配置的端口是否被占用,如果没有被占用依然报错,请检查第二-⑤步配置的php是否正确,是否需要加版本号。具体参考:

Apache2.4配置PHP后启动Apache出现发生服务特定错误: 1.请键入 NET HELPMSG 3547 以获得更多的帮助。_Sugar--T的博客-CSDN博客

5、检查服务启动状态:

        浏览器访问localhost:8010,查看测试页面,或者将要测试的页面放入\Apache24\htdocs文件夹下,访问localhost:8010/文件名,例如:Apache2.4配置PHP后启动Apache出现发生服务特定错误: 1.请键入 NET HELPMSG 3547 以获得更多的帮助。_Sugar--T的博客-CSDN博客。访问时8010请替换成第二步中httpd.conf文件里配置的端口号。

        访问自己页面:

        测试页面源码:

<!DOCTYPE html>
<html>
<body>

<h1>My first PHP page</h1>

<?php
echo "Hello World!";
?>

</body>
</html>

        可以看到PHP代码被正常解析,如果出现php代码不解析,或者被注释掉的情况,请检查第2步中第⑥步的配置是否正确,修改配置后记得重新启动服务配置才能生效。

        尝试纯php代码:

<?php
echo "没有任何力量比知识更强大,用知识武装起来的人是不可战胜的。";
?>

        效果:

没有任何力量比知识更强大,用知识武装起来的人是不可战胜的。——高尔基

        访问默认测试网页:

        这样就算启动成功了。

        由于电脑自带水印,图片做部分打码处理。

6、常见问题汇总:

        ①服务启动错误:

        报错信息:

        发生服务特定错误: 1.

        请键入 NET HELPMSG 3547 以获得更多的帮助

        解决方法:检查第2-②步的设置的端口是否已被占用,如果被占用请更换空闲接口或杀死占用的进程。检查第2-⑤步的php配置是否出错,具体参考:Apache2.4配置PHP后启动Apache出现发生服务特定错误: 1.请键入 NET HELPMSG 3547 以获得更多的帮助。_Sugar--T的博客-CSDN博客

        ②服务启动系统拒绝访问:

        解决方法:使用管理员身份运行cmd/终端界面。

        ③ 访问界面时php内容不解析,显示源代码。或php内容不显示,F12查看发现页面php部分被注释掉。

       .纯php页面不解析:访问1.php

        html环境下php内容被注释掉:

 

        解决方法: 检查第2-⑥步配置是否有错,如果后边没有配置 .php,则导致纯php文件不解析,如果不配置 .htm .html,则在html文件中php被注释掉。

        提一嘴,如果你配置了.php文件,直接在.php文件里写html,中间插入php代码也是可以生效的。

        以上就是配置Apache的一些经验,踩过的一些小坑,如果朋友们在配置的过程中还遇到了什么其他问题,可以在评论区留言,我们共同研究一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值