Windows系统下Apache与PHP关联失败,PHP文件无法执行求助
解决Windows下Apache与PHP关联的问题
一、先解决「找不到Apache PHP模块」的问题
你大概率是下载了**Non Thread Safe(NTS,非线程安全)版本的PHP——Windows环境下Apache默认使用线程模式,必须下载Thread Safe(TS,线程安全)**的PHP ZIP包,解压后根目录里才会有适配Apache的模块文件(比如php8apache2_4.dll,对应PHP8.x + Apache2.4)。
如果已经下了NTS版本,重新下载对应PHP主版本的TS包即可,解压到原C:/php目录覆盖(或替换)。
二、配置Apache关联PHP
打开Apache安装目录下conf文件夹里的httpd.conf文件,在文件末尾添加以下配置(注意替换成你的PHP版本和路径):
# 加载PHP模块(根据你的PHP版本调整文件名,比如PHP7.4是php7apache2_4.dll) LoadModule php8_module "C:/php/php8apache2_4.dll" # 指定PHP配置文件所在目录 PHPIniDir "C:/php" # 设置Apache将.php文件交由PHP解析 AddType application/x-httpd-php .php # 可选:配置.phps文件作为PHP源码展示 AddType application/x-httpd-php-source .phps
三、初始化PHP配置文件
进入C:/php目录,将php.ini-development(开发环境用)或php.ini-production(生产环境用)复制一份,重命名为php.ini。你可以根据需求修改这个文件的配置(比如设置时区date.timezone = Asia/Shanghai,开启常用扩展等)。
四、验证配置是否生效
- 重启Apache服务:可以用Apache自带的服务管理器操作,或者打开命令行执行
httpd -k restart(需确保Apache的bin目录在PATH里,或者切换到对应目录执行)。 - 在Apache的
htdocs目录下创建info.php文件,内容为:
<?php phpinfo(); ?>
- 打开浏览器访问
http://localhost/info.php,如果能显示PHP的信息页面,说明关联成功。
你之前遗漏的关键步骤
- 错误下载了非线程安全版本的PHP,导致缺少Apache适配模块;
- 未在Apache配置文件中添加PHP模块加载与文件解析规则;
- 未初始化PHP的核心配置文件
php.ini。
内容的提问来源于stack exchange,提问作者Sk Miraj
相关产品推荐
相关产品推荐

