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. JavaScript中的对象与原型—你不知道的JavaScript上卷读书笔记(四)

    一.对象 对象可以通过两种形式定义:声明(文字)形式和构造形式.即: var myObj = { key: value // ... }; 或: var myObj = new Object(); m ...

  2. Shell编程——test命令

    1.整数 如果表达式为真返回值为0,如果表达式为假,返回值为1.test命令可以对整数.字符串.以及文件进行判断. -it:小于 -le:小于或等于 -gt:大于 -ge:大于或等于 -eq:等于 - ...

  3. nwjs-打包

    1: 将项目内所有文件压缩成一个压缩包 app.zip 2: 将压缩包重命名为 app.nw 3: 将压缩包放置到 下载解压后的 nw.js 根目录下 4: shift+鼠标右键 选择在此处打开命令窗 ...

  4. 洛谷 P1950 长方形_NOI导刊2009提高(2)

    传送门 思路 首先定义\(h\)数组,\(h[i][j]\)表示第\(i\)行第\(j\)列最多可以向上延伸多长(直到一个被用过的格子) 然后使用单调栈算出 \(l_i\)和 \(r_i\) ,分别是 ...

  5. 递归函数详解——VS调试教你理解透彻递归

    #include <stdio.h> #include <stdlib.h> int recursion(int); ; int main(void) { recursion( ...

  6. 说清楚,5G SA和NSA到底有啥区别?

    原文: https://tech.sina.com.cn/5g/i/2019-06-25/doc-ihytcitk7540907.shtml 与4G不同,5G时代有了NSA和SA两个组网选项,这让整个 ...

  7. android 模拟输入框edittext控件按下回车或扫描头扫描到条码

    edtScan.setText(result); edtScan.onEditorAction(EditorInfo.IME_ACTION_NEXT); 场景:PDA都有扫描头,但有时想用自己的手机来 ...

  8. 首次体验MangoDB

    Author:SimpleWu MongoDB官方网:https://www.mongodb.com/ MongoDB中文网:http://www.mongodb.org.cn/ 什么是MongoDB ...

  9. 阿里巴巴 Java 开发手册 1.4.0

    一.编程规约(一) 命名风格1. [强制]代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束.反例: _name / __name / $name / name_ / name$ ...

  10. Axios构造函数学习笔记

    Axios 构造函数 lib/core/axios.js ... var intercaptorManager = require(./IntercaptorManger); var dispatch ...