Windows 2016 & Windows 10 中IIS安装和配置PHP的步骤
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方式运行phpfastcgi.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=curlextension=gd2extension=mbstringextension=mysqliextension=opensslextension=pdo_mysqlextension=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_REQUESTSValue:10000 |

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

PHP 的安装和设置基本完成,在网站目录里放一个 PHP 文件测试一下吧。
比如著名的 Hello World!
|
1
2
3
|
<?phpecho "Hello World";?> |
Windows 2016 & Windows 10 中IIS安装和配置PHP的步骤的更多相关文章
- 用 EasyUEFI 在 Win8/10 中硬盘安装 Ubuntu16.04图文教程
用 EasyUEFI 在 Win8/10 中硬盘安装 Ubuntu 作者:TeliuTe 来源:基础教程网 1.准备Ubuntu安装文件 1)下载带amd的64位 Ubuntu 桌面版光盘镜像文件,如 ...
- Windows Server 2012/2012 R2:安装和配置 SMTP 服务器
Windows Server 2012/2012 R2:安装和配置 SMTP 服务器 安装 SMTP 服务器 以下是安装 SMTP 服务器功能的步骤: 打开“服务器管理器”:单击键盘上的 Window ...
- Linux中Nginx安装与配置详解
转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...
- linux下vsftpd的安装及配置使用详细步骤(推荐)
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...
- Oracle10g 64位 在Windows 2008 Server R2 中的安装 解决方案
背景: 操作系统Windows 2008 Server R2 要安装Oracle10g 64位版本 安装时出现如下错误: 检查操作系统版本:必须是5.0,5.1,5.2 or 6.0.实际为6.1 未 ...
- Oracle10g 64位 在Windows 2008 Server R2 中的安装 DBconsole无法启动
致谢!本文参考http://www.cnblogs.com/leiOOlei/archive/2013/08/19/3268239.html 背景: 操作系统Windows 2008 Server R ...
- Windows下php,mysql,apache相关安装与配置,完善中…
PHP 的安装 由于php是一个zip文件(非install版),安装较为简单解压就行.把解压的 php5.2.1-Win32重命名为 php5.并复制到安装盘目录下.例如安装路径为 c:\php5 ...
- Windows下的Jdk 1.7*安装并配置(图文详解)
不多说,直接上干货! 很多人很少去想,为什么在windows下,安装完Jdk的安装包之后,还需要去配置环境变量,只是知道要这么去做,没有想过为什么要去这么做? 答:由于java是平台无关的 ,安装jd ...
- Scala2.10.4在CentOS7中的安装与配置
随着基于内存的大数据计算框架——spark的火爆流行,用于编写spark内核的Scala语言也随之流行开来.由于其编写代码的简洁性,受到了越来越多程序员的喜爱.我今天给大家展示的时Scala2.10. ...
随机推荐
- [LeetCode] 565. Array Nesting 数组嵌套
A zero-indexed array A of length N contains all integers from 0 to N-1. Find and return the longest ...
- 拒绝后门程序-Alibabaprotect和AliPaladin
详细参考帖子及评论区:流氓进程AlibabaProtect的删除[程序员吧]_百度贴吧 首先打开服务找到AlibabaProtect,然后找到他的位置(C:\Program Files (x86)\A ...
- Elasticsearch由浅入深(二)ES基础分布式架构、横向扩容、容错机制
Elasticsearch的基础分布式架构 Elasticsearch对复杂分布式机制的透明隐藏特性 Elasticsearch是一套分布式系统,分布式是为了应对大数据量. Elasticsearch ...
- DataSet 反射转换成 List<T>
/// <summary> /// DataSet转换成指定返回类型的实体集合 /// </summary> /// <typeparam name="T&qu ...
- java ssh免密登录
package com.meituan.stabletest.sshtest; import java.io.InputStream; import com.jcraft.jsch.Channel; ...
- python 多线程剖析
先来看个栗子: 下面来看一下I/O秘籍型的线程,举个栗子——爬虫,下面是爬下来的图片用4个线程去写文件 #!/usr/bin/env python # -*- coding:utf-8 -*- imp ...
- CentOS中设置Apache服务器网站访问日志[每天的日志]
在阿里云的linux 服务器下Apache的日志默认设置是七天更新一次, 并且所在的目录无法通过FTP浏览器查看, 这样让小白操作起来非常麻烦 可以使用rotatelogs来设置服务器的网站访问日志按 ...
- vue router 常用操作
1. 普通路由 const routes = [ { path: '/index', component: index } ] 2. 重定向 redirect const routes = [ { ...
- 关于优秀的视频播放器 - PotPlayer
播放器设置 直接截图: 其他重要功能 1. 切换语音:Alt + A 谢谢浏览!
- Java并发专栏(一)—— Process vs Thread
一.前言 程序是代码和数据的集合,是一种静态实体.不具有代码执行和数据处理的能力,更多是一种行为的描述. 如果将程序和处理器结合,处理器将程序加载至内存,然后执行程序代码处理数据.这时就是可执行的程序 ...