作为一名新媒体文章写作专员,我经常收到读者关于「如何在 Windows 服务器上搭建 PHP 环境」的咨询。毕竟,PHP 是目前主流的后端开发语言之一,很多企业官网、电商平台、内容管理系统(如 WordPress、Drupal)都依赖它运行。而 Windows 服务器凭借其图形化界面和易操作性,成为不少中小企业或新手运维人员的首选。
不过,Windows 服务器安装 PHP 不像 Linux 那样有成熟的包管理工具(如 Yum、Apt),需要手动配置依赖、环境变量和 Web 服务器关联——这也是很多人觉得「麻烦」的原因。今天,我就把自己在实际运维中总结的完整流程分享出来,从「准备工作」到「环境验证」,每一步都讲透细节,确保你能一次成功。
一、准备工作:选对版本是关键
在开始安装前,你需要明确两个核心问题:选什么 PHP 版本?用什么 Web 服务器?
1. 确定 PHP 版本
PHP 版本迭代很快,目前稳定版有 7.4、8.0、8.1、8.2(2024 年推荐 8.1+,因为 7.4 已停止官方支持)。选择版本时需注意:
- 如果你要运行的程序(如 WordPress 6.4+)明确要求 PHP 版本,优先满足程序需求;
- 若为新项目,建议选 PHP 8.1 或 8.2(性能更好、安全性更高);
- 避免使用「线程安全(Thread Safe, TS)」以外的版本——Windows 服务器上的 IIS 或 Apache 通常需要线程安全支持。
2. 选择 Web 服务器
Windows 服务器常用的 Web 服务器有两种:
- IIS(Internet Information Services):Windows 自带的官方服务器,适合熟悉 Windows 系统的用户,无需额外安装基础环境;
- Apache HTTP Server:跨平台开源服务器,生态成熟,适合习惯 Linux Apache 配置的用户。
本文会分别讲解「IIS + PHP」和「Apache + PHP」两种方案,你可以根据自己的熟悉程度选择。
3. 下载所需安装包
- PHP 安装包:从 PHP 官方网站 下载,选择「VC15/VC16/VC19 x64 Thread Safe」版本(VC 版本对应你的 Windows 运行库,若不确定,可先安装 Visual C++ Redistributable);
- Apache 安装包(若选 Apache):从 Apache Lounge 下载(Windows 官方版需自行编译,Apache Lounge 提供预编译包);
- IIS 启用(若选 IIS):Windows 服务器默认未启用 IIS,需通过「服务器管理器」开启(下文会讲)。
二、方案一:IIS + PHP 环境搭建(Windows 官方方案)
IIS 是 Windows 原生服务器,无需额外安装第三方软件,适合追求「稳定兼容」的用户。
步骤 1:启用 IIS 及 CGI 组件
- 打开「服务器管理器」→ 点击「添加角色和功能」;
- 按向导提示下一步,直到「服务器角色」页面,勾选「Web 服务器(IIS)」;
- 弹出「添加功能」对话框,直接点击「添加功能」;
- 继续下一步,到「角色服务」页面,必须勾选:
- Web 服务器 → 应用程序开发 → CGI(PHP 依赖 CGI 与 IIS 通信);
- 若需要静态文件支持,可勾选「静态内容」;
- 点击「下一步」→「安装」,等待安装完成后重启服务器(可选,但建议重启)。
步骤 2:安装并配置 PHP
- 解压 PHP 包:将下载的 PHP 压缩包(如
php-8.1.20-Win32-vs16-x64.zip)解压到一个无空格、无中文的目录,比如C:\php81(避免路径问题); - 复制配置文件:进入
C:\php81,找到php.ini-development(开发环境)或php.ini-production(生产环境),复制一份并重命名为php.ini(这是 PHP 的核心配置文件); - 修改 php.ini 关键配置:
- 打开
php.ini,找到extension_dir,去掉前面的分号(;),并设置为 PHP 扩展目录路径:
extension_dir = "C:\php81\ext"(扩展目录默认在ext文件夹); - 启用常用扩展(去掉前面的分号):
extension=mysqli(MySQL 数据库支持)、extension=pdo_mysql(PDO 数据库支持)、extension=gd(图片处理)、extension=curl(网络请求); - 设置
date.timezone:去掉分号,设置为中国时区:
date.timezone = Asia/Shanghai;
- 打开
- 配置环境变量:
- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」;
- 在「系统变量」的「Path」中,点击「编辑」→「新建」,添加
C:\php81(让系统能找到 php.exe); - 点击「确定」保存,关闭所有窗口。
步骤 3:将 PHP 与 IIS 关联
- 打开「IIS 管理器」(可通过「服务器管理器」→「工具」→「Internet Information Services (IIS) 管理器」打开);
- 在左侧导航栏,右键点击你的服务器名称,选择「添加模块映射」;
- 在弹出的对话框中填写:
- 请求路径:
*.php(表示所有 .php 文件都由 PHP 处理); - 模块:选择「FastCgiModule」(FastCGI 是 IIS 与 PHP 通信的高效方式);
- 可执行文件:点击「...」选择
C:\php81\php-cgi.exe; - 名称:填写「PHP FastCGI」(自定义名称,方便识别);
- 请求路径:
- 点击「确定」,会弹出「是否允许添加此模块映射?」,选择「是」;
- 测试默认文档:在 IIS 管理器中,点击左侧的「默认网站」→ 右侧「默认文档」→「添加」,输入
index.php并上移到顶部(让 IIS 优先解析 index.php)。
三、方案二:Apache + PHP 环境搭建(开源生态方案)
如果你习惯 Linux 下的 Apache 配置,或者需要更灵活的模块支持,可以选择 Apache + PHP 方案。

步骤 1:安装 Apache
- 解压 Apache 安装包(如
httpd-2.4.58-win64-VS17.zip)到无空格、无中文的目录,比如C:\Apache24; - 修改 Apache 配置文件:打开
C:\Apache24\conf\httpd.conf,修改以下内容:- 找到
Define SRVROOT,设置为 Apache 安装目录:
Define SRVROOT "C:\Apache24"; - 找到
Listen 80,若 80 端口被占用(如 IIS 已启用),可改为 8080 或其他端口(如Listen 8080); - 找到
ServerName,去掉前面的 #,设置为你的服务器域名或 IP(如ServerName localhost:80,若改了端口则对应修改);
- 找到
- 安装 Apache 服务:
- 以「管理员身份」打开命令提示符(CMD);
- 切换到 Apache 的 bin 目录:
cd C:\Apache24\bin; - 执行安装命令:
httpd.exe -k install -n "Apache24"(-n 后面是服务名称,自定义);
- 启动 Apache:
- 执行
httpd.exe -k start,若没有报错,说明启动成功; - 打开浏览器访问
http://localhost(或http://localhost:8080),若看到「It works!」页面,证明 Apache 安装成功。
- 执行
步骤 2:安装并配置 PHP(与 IIS 方案类似)
- 解压 PHP 包到
C:\php81(同 IIS 方案); - 复制
php.ini-development为php.ini,并修改extension_dir、扩展、时区等配置(同 IIS 方案); - 配置环境变量:将
C:\php81添加到系统 Path(同 IIS 方案)。
步骤 3:将 PHP 与 Apache 关联
- 打开 Apache 配置文件
C:\Apache24\conf\httpd.conf; - 加载 PHP 模块:在文件末尾添加以下代码(注意 PHP 版本和路径):
# 加载 PHP 模块 LoadModule php_module "C:/php81/php8apache2_4.dll" # 关联 .php 文件与 PHP 模块 AddHandler application/x-httpd-php .php # 设置 PHP 配置文件路径 PHPIniDir "C:/php81"注意:
php8apache2_4.dll是 PHP 针对 Apache 2.4 的模块文件,若你的 PHP 版本是 7.x,文件名可能是php7apache2_4.dll; - 添加默认文档:找到
DirectoryIndex,在后面添加index.php,改为:
DirectoryIndex index.html index.php; - 重启 Apache:在 CMD 中执行
httpd.exe -k restart,使配置生效。
四、环境验证:确保 PHP 正常运行
无论选择哪种方案,最后都需要验证 PHP 是否能正常解析。
步骤 1:创建测试文件
- IIS 方案:找到 IIS 「默认网站」的物理路径(通常是
C:\inetpub\wwwroot); - Apache 方案:找到 Apache 的网站根目录(在
httpd.conf中由DocumentRoot定义,默认是C:\Apache24\htdocs); - 在根目录下新建一个
info.php文件,内容为:<?php phpinfo(); ?>
步骤 2:访问测试页面
- IIS 方案:打开浏览器,访问
http://localhost/info.php(若修改了端口,需加上端口,如http://localhost:8080/info.php); - Apache 方案:访问
http://localhost/info.php(或对应端口);
如果页面显示 PHP 的详细信息(版本、扩展、配置等),说明环境搭建成功!
五、常见问题与解决方法
-
IIS 访问 PHP 出现「404 错误」:
检查「模块映射」是否正确,确保*.php关联到php-cgi.exe,且「默认文档」中添加了index.php。 -
Apache 启动失败:
打开C:\Apache24\logs\error.log查看错误日志,常见原因是端口被占用(可通过netstat -ano | findstr "80"查看占用端口的进程,结束后重试)或配置文件语法错误(比如路径写错)。 -
PHP 扩展未加载:
检查php.ini中extension_dir路径是否正确,扩展前面的分号是否去掉,且扩展文件(如php_mysqli.dll)存在于ext目录中。 -
时间显示不正确:
确认php.ini中date.timezone已设置为Asia/Shanghai,且重启了 Web 服务器。
六、生产环境优化建议
如果是用于生产环境,还需要做以下优化:
- 使用生产环境配置:将
php.ini替换为php.ini-production,并调整error_reporting(只记录关键错误)、display_errors = Off(不在浏览器显示错误); - 开启 OPcache:在
php.ini中启用zend_extension=opcache,并配置缓存大小(如opcache.memory_consumption=128),提升 PHP 执行效率; - 设置上传限制:修改
upload_max_filesize(如20M)、post_max_size(如20M),满足文件上传需求; - 定期更新 PHP:及时安装官方安全补丁,避免漏洞攻击。
总结
Windows 服务器安装 PHP 环境并不复杂,核心是「选对版本」「正确配置依赖」「关联 Web 服务器」。无论是 IIS 还是 Apache 方案,只要按照步骤操作,都能快速搭建起稳定的 PHP 运行环境。
如果你是新手,建议先从 IIS 方案入手(毕竟是 Windows 原生);如果需要更灵活的配置,Apache 会是更好的选择。最后,一定要记得通过 phpinfo() 验证环境——这是确保后续项目能正常运行的关键一步。
希望这篇教程能帮你解决实际问题,如果你在操作中遇到其他问题,欢迎在评论区留言交流!








留言0