Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器

这篇文章主要介绍了windows server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程,需要的朋友可以参考下

准备篇

一、环境说明:

操作系统:Windows Server 2019

PHP版本:php 7.3.11

MySQL版本:MySQL 8.0.18.0

二、相关软件下载:

1、PHP下载地址:

http://windows.php.net/downloads/releases/php-7.3.11-nts-Win32-VC15-x64.zip

2、MySQL下载地址:

http://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-community-8.0.18.0.msi

3、Visual C++ Redistributable for Visual Studio 2015(安装PHP、MySQL需要此插件)

http://download.visualstudio.microsoft.com/download/pr/11100229/78c1e864d806e36f6035d80a0e80399e/VC_redist.x86.exe

http://download.visualstudio.microsoft.com/download/pr/11100230/15ccb3f02745c7b206ad10373cbca89b/VC_redist.x64.exe

4、Microsoft URL 重写模块 2.0下载地址(IIS伪静态需要此插件)

http://download.microsoft.com/download/4/E/7/4E7ECE9A-DF55-4F90-A354-B497072BDE0A/rewrite_x64_zh-CN.msi

安装篇

一、安装IIS10.0

控制面板-系统和安全-管理工具

图片[1]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

服务器管理器

图片[2]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

添加角色和功能

图片[3]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

下一步

图片[4]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

选择:基于角色或基于功能的安装

下一步

图片[5]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

选择:从服务器池中选择服务器

下一步

图片[6]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

选择:Web服务器(IIS)

图片[7]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

添加功能

图片[8]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

下一步

图片[9]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

下一步

图片[10]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

下一步

图片[11]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

确保CGI被选中,其他的角色服务根据需要选择,如果不知道如何选择,建议选择全部功能。

图片[12]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

下一步

图片[13]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

安装

图片[14]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

显示安装成功,点关闭。

图片[15]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

可以看到角色和服务器组中已经有了IIS

打开IE浏览器,输入http://127.0.0.1/会看到下面的界面

图片[16]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

IIS10.0已经安装完成。

二、安装PHP

1、Visual C++ Redistributable for Visual Studio 2017 (x86、x64)

图片[17]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

安装x86

图片[18]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

安装x64

图片[19]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

全部安装完成后,点关闭。

2、安装php-7.3.11-nts-Win32-VC15-x64.zip

图片[20]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

解压php-7.3.11-nts-Win32-VC15-x64.zip文件

图片[21]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

重命名文件夹为php73,把php73文件夹拷贝到C盘根目录

图片[22]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

打开C:\php

复制php.ini-production为php.ini

用记事本打开php.ini

做如下添加修改:

extension_dir = “C:\php73\ext” #设置php模块路径

date.timezone = PRC #设置时区为中国时区

cgi.force_redirect = 0 #开启以CGI方式运行php

fastcgi.impersonate = 1;

cgi.rfc2616_headers = 1

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

extension=curl

extension=gd2

extension=mbstring

extension=exif

extension=mysqli

extension=sockets

extension=php_xmlrpc

extension=php_pdo_mysql

图片[23]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

图片[24]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

修改完成后,保存退出

3、配置IIS支持PHP

打开控制面板-系统和安全-管理工具

图片[25]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

打开服务器管理器

图片[26]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

双击左边“起始页”下面的计算机名称

图片[27]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

找到中间的IIS部分,打开“处理程序映射”。

图片[28]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

点右边的“添加模块映射”

图片[29]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

请求路径:*.php

模块:FastCgiModule

可执行文件(可选):C:\php73\php-cgi.exe

名称:FastCGI

最后,确定

图片[30]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

图片[31]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

双击左边“起始页”下面的计算机名称

找到中间的IIS部分,打开“FastCGI设置”

图片[32]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

右键选中:C:\php73\php-cgi.exe然后选择编辑

图片[33]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

监视对文件所做的更改:C:\php73\php.ini

图片[34]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

环境变量,点旁边的”…”

图片[35]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

点“添加”

图片[36]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Name:PHP_FCGI_MAX_REQUESTS

Value:1000

确定

图片[37]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

双击左边“起始页”下面的计算机名称

找到中间的IIS部分,打开“默认文档”

图片[38]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

点右边的“添加”

名称:index.php

确定

可以选择右边操作下面“上移”选项,把index.php移到最上边

4、测试php程序是否正常运行

打开:

C:\inetpub\wwwroot

新建一个index.php文件

内容如下:

<?php

phpinfo();

?>

最后,保存退出

图片[39]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

在浏览器里面打开http://127.0.0.1/

出现下面的界面,说php程序可以正常运行。

图片[40]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

三、安装MySQL

双击打开mysql-installer-community-8.0.18.0

图片[41]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

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

Next

图片[42]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Edit

图片[43]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

选择MySQL Servers  64位

Filter

图片[44]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

点开MySQL Servers

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

Next

图片[45]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Execute

图片[46]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Next

图片[47]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Next

图片[48]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

默认,Next

图片[49]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Config Type(配置类型):

Developer Machine(开发服务器)

Server Machine(普通服务器)

Dedicated Machine(专用服务器)

这里选择第二项:Server Machine(普通服务器)

勾选“TCP/IP ”

Port Number(端口):3306

勾选“Open firewall port for network access“(打开防火墙端口网络访问)

Next

图片[50]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

选择第二项,使用兼容MySQL5.7之前版本的加密方式

Next

图片[51]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

MySQL Root password:输入密码

Repeat Password:重复输入密码

设置好之后,点Next

图片[52]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

勾选:配置MySQL系统服务

Windows Server Name(Windows服务名):MySQL80

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

勾选:Standard System Account  默认使用系统用户运行

Next

图片[53]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Execute

图片[54]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Finish

图片[55]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Next

图片[56]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

Finish

打开MySQL安装路径

C:\Program Files\MySQL\MySQL Server 8.0

新建配置文件my.ini

[mysqld]

# 设置3306端口

port=3306

# 设置mysql的安装目录

basedir=C:\Program Files\MySQL\MySQL Server 8.0

# 设置mysql数据库的数据的存放目录

datadir=C:\Program Files\MySQL\Data

# 允许最大连接数

max_connections=1000

# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统

max_connect_errors=10

# 服务端使用的字符集默认为UTF8

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

# 默认使用“mysql_native_password”插件认证

default_authentication_plugin=mysql_native_password

[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8

[client]

# 设置mysql客户端连接服务端时默认使用的端口

port=3306

default-character-set=utf8

保存

打开C:\ProgramData\Microsoft\Windows\Start Menu\Programs\MySQL\MySQL Server 8.0

双击MySQL Server 8.0 Command Line Client

图片[57]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

输入安装时候的MySQL root账号密码,回车,登录到MySQL控制台

图片[58]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

图片[59]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

MySQL安装完成

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

双击安装Microsoft URL 重写模块rewrite_x64_zh-CN.msi

图片[60]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

出现错误提示,确定

图片[61]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

搜索-运行

输入regedit,确定,打开注册表,找到:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters

右侧的MajorVersion是DWORD值,它的值十进制是10,把它改成9。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp

也是MajorVersion 项,这个也是dword值10(注意是十进制),把它改成9

然后再次安装,切记安装完之后再改回来。

图片[62]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

图片[63]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

再次安装

图片[64]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

安装

图片[65]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

完成

图片[66]-Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程_win服务器-渗透云记 - 专注于网络安全与技术分享

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

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

至此,Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程完成。

© 版权声明
THE END
喜欢就支持一下吧
点赞10 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容