Windows 2016 和 Windows 10 内核是相同的,我们首先需要安装 Internet Information Services (IIS),当然 Win2016 跟 Win10 安装 IIS 的步骤稍有差别,之前本站有文章介绍:《Windows 2016 如何安装 IIS》和《Windows 10 如何安装 IIS》,当然也可以参考之前的《Win7安装IIS7.5步骤配图详解》。

所以本文以安装完 IIS 为基础,介绍 PHP 安装和配置的步骤:

第一步,下载 PHP 安装包,并配置 php.ini

1.下载 PHP 安装包:(PHP 下载地址:http://windows.php.net/download/),这里以最新的 PHP 7.2.0 为例,最新的 PHP 有四个版本,分别是 32 位的 VC15 x86 Non Thread Safe / VC15 x86 Thread Safe 和 64 位的 VC15 x64 Non Thread Safe / VC15 x64 Thread Safe,如果要想用于 IIS 则需要安装 Non Thread Safe 版,也就是下载下来的文件里带 nts 的。

如果操作系统是64位的并且配置还可以,尽量选择64位的,也就是选择安装 php-7.2.0-nts-Win32-VC15-x64.zip,如果选择32位,可以选择安装 php-7.2.0-nts-Win32-VC15-x86.zip 。

2.解压 PHP 压缩包:下载完PHP安装包之后,将压缩包内所有文件解压到电脑的某个目录,比如本案例中是解压到了 E:\IIS\soft\php-7.2.0\ 文件夹下面了。

3.进行 php.ini 设置,在 PHP 解压出来的文件中可以找到 php.ini-development 和 php.ini-production 文件,首先将 php.ini-development 复制备份一下,然后将 php.ini-development 重命名为 php.ini。然后用文本编辑器(比如 Windows 自带的记事本就可以)打开 php.ini 文件,然后找到下面等号前面的字段,将前面的分号删除,并安装下面进行修改:

1
2
3
4
5
6
7
8
extension_dir = "E:\IIS\soft\php-7.2.0\ext" ;设置php模块路径
date.timezone = PRC ;设置时区为中国时区
short_open_tag = On ;php支持短标签 可选
cgi.force_redirect = 0 ;开启以CGI方式运行php
fastcgi.impersonate = 1 ;FastCGI相关设置
cgi.rfc2616_headers = 1 ;为什么要改这一项暂不清楚
cgi.fix_pathinfo = 0 ;将1改为0,为了防止 FastCGI解析漏洞
error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED ;将错误提醒修改为标准模式

然后找到以下 php 扩展模块,根据需要选择开启,取消前面的分号为开始相应扩展模块:

1
2
3
4
5
6
7
extension=curl
extension=gd2
extension=mbstring
extension=mysqli
extension=openssl
extension=pdo_mysql
extension=xmlrpc

注意:这里要注意一点,PHP 7 以后的版本不支持 mysql 这个扩展了,可以通过 mysqli.dll 和 pdo_mysql.dll 两个扩展来连接 MySQL 数据库。

通过 mysqli.dll 扩展连接 MySQL 数据库的方法:https://www.icoa.cn/a/799.html

第二步,对 IIS 进行设置以支持 PHP

1.打开 IIS,找到 处理程序映射,双击打开。

2.打开 处理程序映射 之后,点击右边的 添加模块映射...

3.打开 添加模块映射 之后,按照下面填写相关信息,其中 请求路径 填写 *.php可执行文件 选择自己安装路径里的 php-cgi.exe 文件即可,最后点确定

4.会弹出 要为此可执行文件创建 FastCGI 应用程序吗?点  即可。

5.然后返回 IIS,点击左侧的 计算机名称,然后在右边找到 FastCGI 设置,双击打开。

6.打开 FastCGI 设置 之后,选择 php-cgi.exe 文件,然后点击右边的 编辑

7.在打开的对话框中,找到 FastCGI 属性 中的 监视对文件所做的更改,点击后面的 ... 然后选择刚才设置的 php.ini 文件

8.然后选中 环境变量,并点击后面的 ...

9.在打开的 对话框 中点击左边的 添加

10.在右边的 Name 和 Value 中分别按照下图输入相关信息,点确定。

1
2
Name:PHP_FCGI_MAX_REQUESTS
Value:10000

11.返回 编辑 FastCGI 应用程序 对话框,点击 确定,完成设置。

PHP 的安装和设置基本完成,在网站目录里放一个 PHP 文件测试一下吧。

比如著名的 Hello World!

1
2
3
<?php
echo "Hello World";
?>

Windows 2016 & Windows 10 中IIS安装和配置PHP的步骤的更多相关文章

  1. 用 EasyUEFI 在 Win8/10 中硬盘安装 Ubuntu16.04图文教程

    用 EasyUEFI 在 Win8/10 中硬盘安装 Ubuntu 作者:TeliuTe 来源:基础教程网 1.准备Ubuntu安装文件 1)下载带amd的64位 Ubuntu 桌面版光盘镜像文件,如 ...

  2. Windows Server 2012/2012 R2:安装和配置 SMTP 服务器

    Windows Server 2012/2012 R2:安装和配置 SMTP 服务器 安装 SMTP 服务器 以下是安装 SMTP 服务器功能的步骤: 打开“服务器管理器”:单击键盘上的 Window ...

  3. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

  4. linux下vsftpd的安装及配置使用详细步骤(推荐)

    vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...

  5. Oracle10g 64位 在Windows 2008 Server R2 中的安装 解决方案

    背景: 操作系统Windows 2008 Server R2 要安装Oracle10g 64位版本 安装时出现如下错误: 检查操作系统版本:必须是5.0,5.1,5.2 or 6.0.实际为6.1 未 ...

  6. Oracle10g 64位 在Windows 2008 Server R2 中的安装 DBconsole无法启动

    致谢!本文参考http://www.cnblogs.com/leiOOlei/archive/2013/08/19/3268239.html 背景: 操作系统Windows 2008 Server R ...

  7. Windows下php,mysql,apache相关安装与配置,完善中…

    PHP 的安装 由于php是一个zip文件(非install版),安装较为简单解压就行.把解压的 php5.2.1-Win32重命名为 php5.并复制到安装盘目录下.例如安装路径为 c:\php5 ...

  8. Windows下的Jdk 1.7*安装并配置(图文详解)

    不多说,直接上干货! 很多人很少去想,为什么在windows下,安装完Jdk的安装包之后,还需要去配置环境变量,只是知道要这么去做,没有想过为什么要去这么做? 答:由于java是平台无关的 ,安装jd ...

  9. Scala2.10.4在CentOS7中的安装与配置

    随着基于内存的大数据计算框架——spark的火爆流行,用于编写spark内核的Scala语言也随之流行开来.由于其编写代码的简洁性,受到了越来越多程序员的喜爱.我今天给大家展示的时Scala2.10. ...

随机推荐

  1. CF717A Festival Organization(第一类斯特林数,斐波那契数列)

    题目大意:求 $\sum\limits_{n=l}^{r}\dbinom{f_n}{k}\bmod 10^9+7$.其中 $f_n$ 是长度为 $n$ 的 $01$ 序列中,没有连续两个或超过两个 $ ...

  2. [LeetCode] 897. Increasing Order Search Tree 递增顺序查找树

    Given a tree, rearrange the tree in in-order so that the leftmost node in the tree is now the root o ...

  3. JAVA SE11环境变量配置(Windows)

    附上:03. 安装环境:Windows · IntelliJ IDEA Tutorial 附上:使用调试功能进行 Java debug 附上:Linux(Deepin)下配置java8 - L1412 ...

  4. 509道Java面试题解析:2020年最新Java面试题

    <Java面试全解析>是我在 GitChat 发布的一门电子书,全书总共有 15 万字和 505 道 Java 面试题解析,目前来说应该是最实用和最全的 Java 面试题解析了. 我本人是 ...

  5. 重启服务器后Docker容器暴露的端口外网突然访问不了!!

    *:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !impor ...

  6. 基于Django的Rest Framework框架的序列化组件

    本文目录 一 Django自带序列化组件 二 rest-framework序列化之Serializer 三 rest-framework序列化之ModelSerializer 四 生成hypermed ...

  7. vulnhub之SP:Harrison靶机

    下载地址:‘https://www.vulnhub.com/entry/sp-harrison,302/’ 环境:靶机放在virtualbox上运行,网卡模式 攻击机:kali Linux运行在VMw ...

  8. 虚拟机下怎么连接U盘,如何使用U盘?一策书(湘岳阳万江波)的随笔

    准备在虚拟机下,制作U盘启动盘.安装了U盘制作软件,插上U盘却无法识别到.打开虚拟机进行设置,添加USB设备,提示:已达到最大值.怎么回事呢? 原来还需要在宿主机上进行设置. 在宿主机上,运行:ser ...

  9. C#异步的世界【上】(转)

    新进阶的程序员可能对async.await用得比较多,却对之前的异步了解甚少.本人就是此类,因此打算回顾学习下异步的进化史. 本文主要是回顾async异步模式之前的异步,下篇文章再来重点分析async ...

  10. 新的部署架构之下,如何拿shell?

    和朋友聊起一个话题,服务器部署架构升级对安全的影响.从最简单的一台服务器,到应用.数据库.文件服务器分离:从本地机房服务器到云服务器产品矩阵:从虚拟化到容器化部署,一直在往更安全的方向改变. 本文试图 ...