Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程
准备篇
一、环境说明:
操作系统:Windows Server 2019
PHP版本:php 7.3.11
MySQL版本:MySQL 8.0.18.0
二、相关软件下载:
1、PHP下载地址:
https://windows.php.net/downloads/releases/php-7.3.11-nts-Win32-VC15-x64.zip
2、MySQL下载地址:
https://cdn.mysql.com//Downloads/MySQLInstaller/mysql-installer-community-8.0.18.0.msi
3、Visual C++ Redistributable for Visual Studio 2015(安装PHP、MySQL需要此插件)
https://download.visualstudio.microsoft.com/download/pr/11100229/78c1e864d806e36f6035d80a0e80399e/VC_redist.x86.exe
https://download.visualstudio.microsoft.com/download/pr/11100230/15ccb3f02745c7b206ad10373cbca89b/VC_redist.x64.exe
4、Microsoft URL 重写模块 2.0下载地址(IIS伪静态需要此插件)
https://download.microsoft.com/download/4/E/7/4E7ECE9A-DF55-4F90-A354-B497072BDE0A/rewrite_x64_zh-CN.msi
安装篇
一、安装IIS10.0
控制面板-系统和安全-管理工具
服务器管理器
添加角色和功能
下一步
选择:基于角色或基于功能的安装
下一步
选择:从服务器池中选择服务器
下一步
选择:Web服务器(IIS)
添加功能
下一步
下一步
下一步
确保CGI被选中,其他的角色服务根据需要选择,如果不知道如何选择,建议选择全部功能。
下一步
安装
显示安装成功,点关闭。
可以看到角色和服务器组中已经有了IIS
打开IE浏览器,输入http://127.0.0.1/会看到下面的界面
IIS10.0已经安装完成。
二、安装PHP
1、Visual C++ Redistributable for Visual Studio 2017 (x86、x64)
安装x86
安装x64
全部安装完成后,点关闭。
2、安装php-7.3.11-nts-Win32-VC15-x64.zip
解压php-7.3.11-nts-Win32-VC15-x64.zip文件
重命名文件夹为php73,把php73文件夹拷贝到C盘根目录
打开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
修改完成后,保存退出
3、配置IIS支持PHP
打开控制面板-系统和安全-管理工具
打开服务器管理器
双击左边“起始页”下面的计算机名称
找到中间的IIS部分,打开“处理程序映射”。
点右边的“添加模块映射”
请求路径:*.php
模块:FastCgiModule
可执行文件(可选):C:\php73\php-cgi.exe
名称:FastCGI
最后,确定
是
双击左边“起始页”下面的计算机名称
找到中间的IIS部分,打开“FastCGI设置”
右键选中:C:\php73\php-cgi.exe然后选择编辑
监视对文件所做的更改:C:\php73\php.ini
环境变量,点旁边的"..."
点“添加”
Name:PHP_FCGI_MAX_REQUESTS
Value:1000
确定
双击左边“起始页”下面的计算机名称
找到中间的IIS部分,打开“默认文档”
点右边的“添加”
名称:index.php
确定
可以选择右边操作下面“上移”选项,把index.php移到最上边
4、测试php程序是否正常运行
打开:
C:\inetpub\wwwroot
新建一个index.php文件
内容如下:
<"" src="/UploadFiles/2021-04-10/2020041021324840.jpg">
在浏览器里面打开http://127.0.0.1/
出现下面的界面,说php程序可以正常运行。
三、安装MySQL
双击打开mysql-installer-community-8.0.18.0
选中“Custom”(自定义安装)
Next
Edit
选择MySQL Servers 64位
Filter
点开MySQL Servers
选择要安装的版本,点箭头移动到右边窗口
Next
Execute
Next
Next
默认,Next
Config Type(配置类型):
Developer Machine(开发服务器)
Server Machine(普通服务器)
Dedicated Machine(专用服务器)
这里选择第二项:Server Machine(普通服务器)
勾选“TCP/IP ”
Port Number(端口):3306
勾选“Open firewall port for network access“(打开防火墙端口网络访问)
Next
选择第二项,使用兼容MySQL5.7之前版本的加密方式
Next
MySQL Root password:输入密码
Repeat Password:重复输入密码
设置好之后,点Next
勾选:配置MySQL系统服务
Windows Server Name(Windows服务名):MySQL80
勾选:“Start the MySQL Server at System Startup“(在系统启动时启动MySQL服务器)
勾选:Standard System Account 默认使用系统用户运行
Next
Execute
Finish
Next
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
输入安装时候的MySQL root账号密码,回车,登录到MySQL控制台
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
然后再次安装,切记安装完之后再改回来。
再次安装
安装
完成
在:控制面板-系统和安全-管理工具-Internet Information Services (IIS)管理器中可以看到”URL重写“
在:网站根目录下新建文件web.config,添加伪静态规则代码即可实现网站静态化。
至此,Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程完成。
下一篇:Linux 通过Rsync+Inotify实现本、异地远程数据实时同步功能