Windows10-IIS10-Rewrite-PHP-FastCgi-MySQL环境搭建

环境说明:

操作系统:Windows10 1151 10586.164
PHP版本:php-7.2.1-nts-Win32-VC15-x64
MySQL版本:mysql-installer-community-5.7.20.0
Microsoft URL 重写模块: Rewrite 2.0

一、Windows10安装IIS10

打开【控制面板】-【程序和功能】-【启用或关闭Windows功能】。安装IIS所需勾选的组件,我所选的组件如下图,也许勾选的有点多了。还有就是VC组件,我所安装的VC组件如下图。

勾选好组件后,按【确定】。

提示需要打开【Windows更新】才能完成安装,所以我们提前打开【Windows更新】等IIS安装完成了再关闭。不想更新Windows10,所以打开更新时间不要太长,IIS安装好之后马上关闭更新。

 

安装完成后验证IIS是否安装成功。打开浏览器,输入http://localhost/或者http://127.0.0.1/即可打开如下默认的 IIS“欢迎使用”页面。

 

二、安装PHP7.2.1

确保PHP安装所需的Visual C++组件都已安装好。
解压php-7.2.1-nts-Win32-VC15-x64.zip,然后重命名文件夹为php721,然后放到我们需要安装的目录比如我安装到D:\IISweb\php721

然后在解压出来的文件夹php721中可以找到 php.ini-development 和 php.ini-production 文件,将 php.ini-development 复制重命名为 php.ini。

然后用文本编辑器(Windows 自带的记事本都可以)编辑 php.ini 文件。

extension_dir = “D:\IISweb\php721\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.ini内容,以下 php 扩展模块,根据需要选择开启。取消前面的分号即可开启相应扩展模块:

extension=curl
extension=gd2
extension=mbstring
extension=mysqli
extension=openssl
extension=pdo_mysql
extension=xmlrpc
extension=pdo_sqlite
extension=sockets
extension=exif
修改好之后,保存退出即可。

 

三、设置IIS支持PHP

用【小娜】搜索IIS(Internet Information Services(IIS)管理器)就出来了。打开Internet Information Services(IIS)管理器

1、处理程序映射

选中我们需要配置支持PHP的网站,找到 【处理程序映射】,双击打开。

 

打开【处理程序映射】之后

①点击右边的 【添加模块映射…】

②按照下面填写相关参数,其中 【请求路径】 填写 *.php   【可执行文件】 选择php安装路径里的 php-cgi.exe 文件即可,最后点【确定】。

点【确定】后,会弹出 【要为此可执行文件创建 FastCGI 应用程序吗?】点 【是】 即可。

 

2、FastCGI 设置

返回 IIS主页,点击左侧计算机名称,然后在右边找到【FastCGI 设置】,双击打开。

 

打开【FastCGI 设置】之后,选择完整路径【…\php-cgi.exe】,然后点击右边的 【编辑】。

 

在【编辑FastCGI应用程序】对话框的【FastCGI 属性】中

①选中【监视对文件所做的更改】,点击后面的【 … 】然后【选择刚才配置好的 php.ini 文件】

②然后选中 【环境变量】,并点击后面的 【… 】

在【…集合编辑器】的对话框中,点击【添加】。

【Name】 和 【Value】 中分别按照下图输入相关参数,点【确定】。
Name:PHP_FCGI_MAX_REQUESTS
Value:10000

 

最后,返回【编辑 FastCGI 应用程序】对话框,点击 【确定】,完成设置。

 

3、默认文档设置

回到IIS主页,打开【默认文档】

 

点右边的【添加】

名称:index.php  然后点【确定】

之后把【index.php】上移到最上面。

完成IIS对PHP支持的设置了。

 

4、测试PHP配置是否成功

打开【C:\inetpub\wwwroot】新建一个【index.php】文件

内容如下:

<?php
	phpinfo();
?>

保存退出

 

在浏览器里面打开http://127.0.0.1/或http://localhost/
出现下面的界面,说明php程序可以正常运行了。

 

四、安装MySQL

我安装的是mysql-installer-community-5.7.20.0.msi

参考网络资料,基本步骤相同。但有个别步骤不一样,我好像不记得哪一步了。

下面步骤引用网络资料教程地址: http://www.osyunwei.com/archives/9957.html

 

双击打开mysql-installer-community-5.7.17.0
选中“I accept the license terms”(我接受许可条款),点Next

 

选中“Custom”(自定义安装)【Next】

 

Edit

 

选择【MySQL Servers】 【64位】 【Filter】

 

点开【MySQL Servers】

 

选择要安装的版本,点【箭头】移动到右边窗口 【Next】

 

Execute

 

Next

 

Next

 

Config Type(配置类型):
Developer Machine(开发服务器)
Server Machine(普通服务器)
Dedicated Machine(专用服务器)
这里选择第二项:Server Machine(普通服务器)

 

勾选“TCP/IP ” Port Number(端口):3306
勾选“Open firewall port for network access“(打开防火墙端口网络访问)
Next

 

MySQL Root password:输入密码
Repeat Password:重复输入密码
设置好之后,点Next

 

Windows Server Name(Windows服务名):MySQL57
勾选:“Start the MySQL Server at System Startup“(在系统启动时启动MySQL服务器)
Next

 

Next

 

Execute

 

Finish

 

Next

 

Finish

 

下面设置与【网上的教程资料不同】,应该是我安装的版本比较高。我的设置如下:

打开MySQL安装路径
C:\Program Files\MySQL\MySQL Server 5.7
【我的目录是C:\ProgramData\MySQL\MySQL Server 5.7】
复制my-default.ini为my.ini
【我的目录里C:\ProgramData\MySQL\MySQL Server 5.7 直接就有my.ini且我直接不用配置这个步骤】

进入:开始–程序–MySQL–MySQL Server 5.7目录
打开MySQL Server 5.7 Command Line Client
输入安装时候的MySQL root账号密码,回车,登录到MySQL控制台

 

exit(退出)

MySQL安装完成。

 

五、配置IIS10.0支持伪静态

双击安装【Microsoft URL 重写模块rewrite_x64_zh-CN.msi 】 出现错误提示,【确定】

打开regedit,找到:

【HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters】
右侧的【MajorVersion】是【DWORD】值,它的值【十进制是10】,把它改成【9】。

【HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp】
也是【MajorVersion】 项,这个也是【dword】值【10】【注意是十进制】,把它改成【9】
然后再次安装,切记安装完之后再改回来。

 

修改好之后再次安装

完成装完之后,刚才修改的两个【MajorVersion】、【DWORD】值【9】,再改回【10】。

在:控制面板\系统和安全\管理工具\Internet Information Services (IIS)管理器中可以看到”URL重写“

在:网站根目录下新建文件web.config,添加伪静态规则代码即可实现网站静态化。

OK!Windows10 IIS10+Rewrite+PHP-FastCgi+MySQL环境搭建完成。

发表评论

电子邮件地址不会被公开。 必填项已用*标注