You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在IIS上运行PHP网站?Windows Server 2012环境配置求助

解决IIS无法解析PHP文件的问题

嗨,我懂你现在的情况——静态HTML能正常访问,但PHP文件就是没被解析,直接像静态文件一样输出了对吧?这是因为IIS还不知道该用PHP的解析程序来处理.php后缀的文件,下面是具体的配置步骤,基于你已经安装好PHP的前提:

1. 先确认PHP的安装路径

如果你用的是XAMPP自带的PHP,路径一般是 C:\xampp\php,进去确认下有没有 php-cgi.exe 这个文件,这是PHP的核心解析程序。

2. 给IIS安装CGI模块

IIS默认没开启CGI支持,得先装上这个组件:

  • 打开服务器管理器,点击添加角色和功能
  • 一路下一步到功能页面,找到CGI选项并勾选,然后完成安装
  • 安装完成后重启IIS,你可以在命令行里敲 iisreset,或者在IIS管理器里右键站点选择重启

3. 配置IIS的PHP处理程序映射

这一步是核心,用来告诉IIS:“遇到.php文件时,用PHP的CGI程序来解析”:

  • 打开Internet信息服务(IIS)管理器,找到你的默认网站(Default Web Site)
  • 在右侧的功能视图里找到处理程序映射,双击打开
  • 点击右侧的添加模块映射,填写以下内容:
    • 请求路径:*.php
    • 模块:选择FastCgiModule(如果找不到这个选项,回去确认CGI模块已经安装成功)
    • 可执行文件:浏览到你的PHP目录下的 php-cgi.exe,比如 C:\xampp\php\php-cgi.exe
    • 名称:随便起一个好记的名字,比如 PHP_FastCGI
    • 点击确定,弹出的对话框选是,创建对应的FastCGI应用程序

4. 调整PHP.ini配置(可选但推荐)

如果用的是XAMPP的PHP,建议修改几个关键配置避免后续问题:

  • 找到PHP目录里的 php.ini 文件,用记事本或代码编辑器打开
  • 找到 cgi.fix_pathinfo 这行,去掉前面的分号,改成 cgi.fix_pathinfo=1
  • 可以设置时区,比如 date.timezone=Asia/Shanghai,避免PHP抛出时区警告
  • 保存文件后重启IIS让配置生效

5. 测试配置是否成功

创建一个简单的测试文件test.php,内容如下:

<?php phpinfo(); ?>

把它放到 C:\inetpub\wwwroot 目录下,然后访问 http://localhost/test.php,如果能看到满屏的PHP配置信息,就说明配置成功了!

另外提一句,要确保IIS的应用程序池用户(默认是IIS AppPool\DefaultAppPool)对PHP目录和网站根目录有读取权限,不然可能会出现权限报错。

内容的提问来源于stack exchange,提问作者Pant

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 10:36:08