mysql+server+80_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

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

db1f26e3179df4e8c2ee2a224eb8b00c.png

服务器管理器

22e69bd23e714f8a5167ec4ad0d438b7.png

添加角色和功能

74a54f39baca7adb70a4a8b8708c56b4.png

下一步

bce761c3ccaa2d889300c40f80c6dea1.png

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

下一步

4769c8938daa5263016b0b1ddf5a518b.png

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

下一步

2f91d415c4f0ac44e660dc56e1db1dea.png

选择:Web服务器(IIS)

b513a7a635c69a1ec440746cf643c2f4.png

添加功能

eeebe8c02e5d455dba098e66650b3909.png

下一步

8337bda19a1ccfc2b8af22b64a8da750.png

下一步

68730294d08bbb7e98b111867c7527e6.png

下一步

1ebce1c2d9c4fb9393a591b60764a6b8.png

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

0a04941a98f5b56fff26bd3e781e2ce6.png

下一步

0cabbcb24c521f93b872d3ab06977121.png

安装

e91d2b80a27a41d3287d2cddd95332fd.png

显示安装成功,点关闭。

42277e86b834451986914763b0c48b4d.png

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

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

11fb7a7f2e1e92d452c7ad5cd5e4401d.png

IIS10.0已经安装完成。

二、安装PHP

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

805196e653de48b13e562333c0270319.png

安装x86

dfdc78a1693611c104c2f9edd6f339a8.png

安装x64

23c8dbfd87fc68657372dd68606d6455.png

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

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

9d3292b71f87cf426ad1842fda74a1d7.png

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

0be02ba34b17b8286d93acd2ce923260.png

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

0f8d5b4d3a8229c11a39fa964ed41866.png

打开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

9ad7469bd498a63f949d887c00e81365.png

7a497786fe41c2d2efb4e33ac6ca5674.png

修改完成后,保存退出

3、配置IIS支持PHP

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

20846bfcfdd5709e3d9bcd55d9fb261e.png

打开服务器管理器

55a78d44a305d53ee142b1c7101496ea.png

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

94d065aa237605ad6b81678882467b13.png

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

4e800c23ec1051bb26e7570d314c5d9e.png

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

1d67cdcf95d106a29751610abbd7fb1e.png

请求路径:*.php

模块:FastCgiModule

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

名称:FastCGI

最后,确定

4958edc1590049e29cbc055f758513d5.png

edce0820e4dc3c13d130a8967348ebe5.png

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

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

d98566edaf029482190319369a1fa5bf.png

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

c6f0514266fbab6d71465063f3c8a671.png

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

f38de08abce2d44c5eea7b59e0eed9ee.png

环境变量,点旁边的"..."

db5bc58700b06bf24ce0fbbde33e24cf.png

点“添加”

2e0d2f554c1b796b89b3c3a8924250f7.png

Name:PHP_FCGI_MAX_REQUESTS

Value:1000

确定

a9f33d4873001114e1e8b6ddc4b0fb10.png

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

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

13aefd637c3ffb107db213c7ea3da4b1.png

点右边的“添加”

名称:index.php

确定

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

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

打开:

C:\inetpub\wwwroot

新建一个index.php文件

内容如下:

phpinfo();

?>

最后,保存退出

84f314477478df618541465bc3faa6cd.png

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

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

eab42e9288ad835b60337a368c179ec7.png

三、安装MySQL

双击打开mysql-installer-community-8.0.18.0

cef85ec23eb8951b6686499be7ec88a7.png

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

Next

aa0c818c9704df39ff08ea2448cb7dc9.png

Edit

c1661181288c56d915f125d11c3d85d9.png

选择MySQL Servers 64位

Filter

cdcd1074fa4f4d3f5fee12bb3f037551.png

点开MySQL Servers

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

Next

437b8649419b4eaf597d7b79a0ddb780.png

Execute

d5ad1e033a9a31a328d647048f9153be.png

Next

5a1c8ed0f98fe577f714107d510c4e8c.png

Next

d686eff32e2d5fb3c59f4a391af62b57.png

默认,Next

c8a0b0c0f9eda4a8570c0a9fbc05d97f.png

Config Type(配置类型):

Developer Machine(开发服务器)

Server Machine(普通服务器)

Dedicated Machine(专用服务器)

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

勾选“TCP/IP ”

Port Number(端口):3306

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

Next

a007a485ea73f0057aa66e0445ddbf31.png

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

Next

4df97ab61c3cd674ff3ee0440d592aa4.png

MySQL Root password:输入密码

Repeat Password:重复输入密码

设置好之后,点Next

4cf8c78e48d12fcfc0463eaa42920715.png

勾选:配置MySQL系统服务

Windows Server Name(Windows服务名):MySQL80

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

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

Next

7d744f1d42542a780370c1d357af253c.png

Execute

7de9568ae7ba7d20cac8c10b19dee198.png

Finish

25fc7e9edb81a1c965f221b2668f4b43.png

Next

58ef56172ed7313179ccd86261ab03cd.png

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

bae99eb1bffdcc44cd27fd8024425c1d.png

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

2fcd9cac1f81ec7865aa49858c494db6.png

86bc56a6742b94ec9c4bb0395f230914.png

MySQL安装完成

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

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

3033982a5c7d39f91b682f7b02bade30.png

出现错误提示,确定

0a268646c2c469657ef1ebadf176913f.png

搜索-运行

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

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters

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

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp

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

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

dfd6f35796bedd68b97b82960a038172.png

a4b305ae3ce29b90d8b59627fb27cec3.png

再次安装

14bde3a86d1b7b60ebcfbbed906b3535.png

安装

bf1e85ee37f6792dd403633f4185bcfe.png

完成

22655c5bb1002cb24f251b0970487693.png

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

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267434.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win7下开启和使用telnet的方法

win7下开启和使用telnet的方法首先,出于安全考虑,win7已经禁用了telnet这一功能,因为telnet是明文传输的,安全性相当差。转载于:https://blog.51cto.com/xinchq2011/727638

SharePoint Server和Office 365之间的混合模式集成概述

正如您可能已经知道的那样,云中的Microsoft Office 365和SharePoint Server 2013/2016内部部署可以通过多种方式协同工作。这些通常被称为混合模式,因为它们将功能集成到SharePoint Online和SharePoint内部部署中。 以下Microsoft提供了下对照表&#xf…

perl中的map和grep

map 语法: map EXPR, LIST map BLOCK, LIST 语义: 对于LIST中的每个元素执行EXPR或者BLOCK,如果返回值存储在list中,则表示处理后的list,若返回值存储在scalar中,则表示处理后的list中元素个数。下面是几个…

图片压缩

1)一张图片如何显示到屏幕上 一个电脑显示器, 上面的像素点就是内存/显存一张图片表达的颜色信息赋值到那块内存就是图片显示2)图片文件的格式 图片文件的格式,无论是哪一种,最终都要包含原始颜色数据 原始颜色数据 一个像素用rgb…

python io操作需要用到什么硬件_Python I/O 操作(一)

一、I/O 概念I/O 指的是相对内存而言的 input 和 output从文件、数据库、网络向内存中写入数据叫做 input从内存向文件、数据库、网络中输出数据叫做 outputI/O 操作相比 CPU 操作而言是极慢的,往往 CPU 运行一秒钟,I/O 要忙几个月,所以要提高…

fortinate防火墙使用本地用户三步开通PPTP ***

1. 建立用户Local用户及用户组 2. 启用PPTP ***拨号功能 3. 建立***地址,并设置策略:让***用户可以访问内部和外部 (注:建***地址和策略时,接口选择是外部,因为是外部拨入的) 完成上述三步&…

李国浩20179307第二周作业

人物介绍 国内知名黑客: 吴翰青:阿里云首席安全科学家、云盾负责人,也是网络安全领域为人熟知的“刺”、“道哥”和“小黑”。他要想黑谁家的网站,别说企业、医院,银行都要彻夜难眠。但小黑是白帽子,黑客最…

rust windows 交叉编译_交叉编译和静态链接 RUST 库

在 CSIS 中,我们过去使用 Python 编写后端,同时为 Incident Response Toolkit 编写一些 C/C 代码。几年前,主要是由于性能原因,我们开始用 Rust 替换 Python 重写了一些特定的后端服务,并取得了巨大的成功。现在&#…

转lua解释执行脚本流程

本文转自&#xff1a;http://www.cnblogs.com/zxh1210603696/p/4458473.html #include "lua.hpp"#include <iostream> using namespace std;#pragma comment(lib, "lua5.1.lib")struct lua_guard{lua_State *pL;lua_guard(lua_State *s) :pL(s){}~lu…

about hamout cloudra

http://running.iteye.com/?page3

(转)PowerHA完全手册(一,二,三)

PowerHA完全手册&#xff08;一&#xff09; 原文&#xff1a;http://www.talkwithtrend.com/Article/39889-----PowerHA完全手册&#xff08;一&#xff09; http://www.talkwithtrend.com/Article/40117---PowerHA完全手册&#xff08;二&#xff09; http://www.talkwithtre…

dial up network

dial up network 通过电话线拨号上网的网络系统

事件处理 java_Java事件处理的4种方法

第一种 自身类作为事件监听器import javax.swing.*;import java.awt.*;import java.awt.event.*;/***Java事件处理机制:自身类作为事件监听器*author Winty(wintysgmail.com)*version 2008-12-3*/class ThisClassEvent extends JFrame implements ActionListener{JButton btn;p…

新浪微博推出具有中国特色的“关注但屏蔽”功能

关注一个人&#xff0c;又偷偷屏蔽他&#xff0c;这项功能有人称之“虚伪”&#xff0c;有人称之“贴心”。 请听题&#xff0c;如何礼貌地回答熟人的这个问题&#xff1a;“你为什么取消了微博上对我的关注&#xff1f;”相信这是很多玩微博的人都会遇到的问题&#xff0c;取消…

linux shell 脚本个人规范总结

一、shell 语句格式 linux shell有一套自己的流程控制语句&#xff0c;其中包括条件语句(if)&#xff0c;循环语句(for,while)&#xff0c;选择语句(case)。下面我将通过例子介绍下&#xff0c;各个语句使用方法。 1.1、if语句结构[if/then/elif/else/fi] if 条件测试语句 then…

java循环基础知识_java基础知识—循环结构

1.while 循环语法&#xff1a;while(循环操作){循环操作&#xff1b;}特点:先判断&#xff0c;再执行&#xff1b;2. &#xff1a;用于数字比较 比较的是地址equals: 用于字符串比较 比较的是字符3.do-while语法&#xff1a;do{循环操作&#xff1b;}while(循环条件)&#xff…

android文件读写

public class service { private Context context;//引入上下文对象&#xff0c;要使用其中的方法openFileOutput public service(Context context) { super(); this.context context; } public void save(String filename,String content)throws Exception//抛出异…

接口的声明

C#中咩有多继承&#xff0c;为了解决多继承接口 什么是接口   接口可以理解为对一组方法声明进行统一命名&#xff0c;但是这些方法没有提供任何实现&#xff0c;也就是说&#xff0c;吧一组方法声明在一个接口中 然后继承于该接口的类都需要实现这些接口。 注意&#xff1a;…

C51编程在不同内存空间(data xdata bdata)定义变量的注意事项

1、data区空间小,所以只有频繁用到或对运算速度要求很高的变量才放到data区内,比如for循环中的计数值。 2、data区内最好放局部变量。 因为局部变量的空间是可以覆盖的&#xff08;某个函数的局部变量空间在退出该函数是就释放,由别的函数的局部变量覆盖&#xff09;,可以提高内…

java 类调用情况_java 如何调用类?情况如下

本人目录如下&#xff1a;在surge目录下有一个java文件想创建一个LBChart2DFrameDemo对象&#xff0c;不知道如何创建&#xff1f;。注意&#xff1a;LBChart2DFrameDemo使用了Chart2D.jar包中内容。这个目录ClsChart2D尚未加在...本人目录如下&#xff1a;在surge目录下有一个…