IIS服务器发布PHP网站

IIS服务器,相信开发者都不会陌生,它的英文全称是Internet Information Services,是由微软公司提供的基于运行Microsoft Windows的互联网基本服务,常用于Windows系统的Web项目部署,本篇以PHP项目为例,讲解如何使用IIS完成PHP项目的发布。

一、安装PHP

下载地址:PHP: Downloads下载最新版本

apache017 - IIS服务器发布PHP网站

下载Thread Safe版本

apache018 - IIS服务器发布PHP网站

这里插一句,之前没有安装过VC15拓展包的同学要再安装一下拓展包

apache019 1024x626 - IIS服务器发布PHP网站

下载完直接运行,整个步骤不需要任何手动设置,就不再赘述。

在服务器C盘里新建一个文件夹,命名php,把下载的压缩包解压到php文件夹里, 并在php文件夹里再新建一个www文件夹。

apache020 - IIS服务器发布PHP网站

将 PHP 的根目录下的php.ini-production复制一份并改名为 php.ini,作为PHP的配置文件;

二、PHP配置设置

编辑php.ini,里面有很多配置要修改

1.修改扩展文件的路径

apache021 - IIS服务器发布PHP网站

把 ;extension_dir = “ext” 前面的分号去掉,然后引号里改成ext文件夹的绝对路径。

2.修改需要加载的扩展文件

修改需要加载的扩展文件,取消部分扩展程序的注释(注释就是分号)

找到扩展程序的部分

apache022 - IIS服务器发布PHP网站

修改后如下:

apache023 - IIS服务器发布PHP网站

3. 设置默认的时区

找到这个部分:

apache024 - IIS服务器发布PHP网站

修改问Asia/Shanghai,如图

apache025 - IIS服务器发布PHP网站

4. 设置 ssl

找到这个部分(我的是在文件末尾)

apache026 - IIS服务器发布PHP网站

修改为cacert.pem,如图:

apache027 - IIS服务器发布PHP网站

5. 开启php短标签

找到; short_open_tag

apache028 - IIS服务器发布PHP网站

去掉注释,改为short_open_tag = on

apache029 - IIS服务器发布PHP网站

6. 以CGI模式运行PHP

找到; cgi.force_redirect = 1

apache030 - IIS服务器发布PHP网站

取消注释,改为cgi.force_redirect = 0

apache031 - IIS服务器发布PHP网站

7. 开启IIS的FastCGI托管

找到; fastcgi.impersonate = 1,取消注释

apache032 - IIS服务器发布PHP网站

取消后如图:

apache033 - IIS服务器发布PHP网站

就在fastcgi的下面,取消; cgi.rfc2616_headers = 1的注释 

apache034 - IIS服务器发布PHP网站

取消后如图:

apache035 - IIS服务器发布PHP网站

8. 拷贝配置文件到系统目录 

我们把修改好的php.ini文件复制一份,放到C盘的windows文件夹下

apache036 - IIS服务器发布PHP网站

三、配置IIS的PHP部署环境

服务器管理器 => IIS => 添加角色和功能 => 安装CGI

apache045 - IIS服务器发布PHP网站

apache046 - IIS服务器发布PHP网站

进入IIS管理器

apache047 - IIS服务器发布PHP网站

进入后依次配置处理程序映射、FastCGI设置、默认文档、身份验证。

apache048 - IIS服务器发布PHP网站

1. 处理程序映射

进入功能,点击添加模块映射

apache049 1024x593 - IIS服务器发布PHP网站

照我下面的输入

apache050 - IIS服务器发布PHP网站

点击确定

2. FastCGI设置

编辑我们刚刚设置的php-cgi.exe

apache051 - IIS服务器发布PHP网站

修改【监视对文件所做的修改】为php.ini的绝对路径

apache052 - IIS服务器发布PHP网站

再修改【环境变量】,添加PHP_FCGI_MAX_REQUESTS和1000如图

apache053 - IIS服务器发布PHP网站

3. 修改默认文档

添加index.php

apache054 - IIS服务器发布PHP网站

4. 修改身份验证

修改匿名用户标识为:应用程序池标识

四、打开服务器的防火墙、控制台的安全组

1. 打开防火墙60端口

新建入站规则 => 端口 => 60 => 一直下一步(规则命名随意)

apache056 - IIS服务器发布PHP网站

apache057 - IIS服务器发布PHP网站

apache058 - IIS服务器发布PHP网站

后面一直下一步,最后名字和备注随便写,我写的是phpweb备注60。

2. 开放安全组

打开腾讯云控制台,进入安全组,开放60端口

进入控制台,找到安全组,找到对应的服务器实例,点击修改规则,在【放通Web服务端口】那一行里添加60(注意用逗号隔开),保存。

apache059 - IIS服务器发布PHP网站

五、测试访问PHP项目

至此,腾讯云的PHP项目运行环境已经部署完成,我们用本地机器试一下,输入公网IP:60

apache060 - IIS服务器发布PHP网站

成功访问,配置圆满完成!

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

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

相关文章

Qt 中使用 MySQL 数据库保姆级教程(上)

作者:billy 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 前言 在 Qt 中默认只搭载了 QSqlLite 数据库驱动,若要使用其他数据库需要自己下载数据库,并将数据库驱动加载到…

GitOps实践指南:GitOps能为我们带来什么?

Git,作为开发过程中的核心工具,提供了强大的版本控制功能。即便在写代码的时候稍微手抖一下,我们也能通过 Git 的差异对比(diff)轻松追踪到庞大工程中的问题,确保代码的准确与可靠。这种无与伦比的自省能力…

【小沐学Python】Python实现免费天气预报获取(OpenWeatherMap)

文章目录 1、简介1.1 工具简介1.2 费用1.3 注册1.4 申请key 2、接口说明2.1 One Call 3.02.2 Current Weather and Forecasts collection2.2.1 API 调用2.2.2 API 参数 2.3 Historical Weather collection2.4 Weather Maps collection2.5 Other weather APIs 3、接口测试3.1 例…

SpringBoot集成支付宝,看这一篇就够了。

前 言 在开始集成支付宝支付之前,我们需要准备一个支付宝商家账户,如果是个人开发者,可以通过注册公司或者让有公司资质的单位进行授权,后续在集成相关API的时候需要提供这些信息。 下面我以电脑网页端在线支付为例,介…

HTML教程(1)——概述和第一个网页

一、什么是HTML HTML 是用来描述网页的一种语言。 HTML 指的是超文本标记语言 (Hyper Text Markup Language)HTML 不是一种编程语言,而是一种标记语言 (markup language)标记语言是一套标记标签 (markup tag)HTML 使用标记标签来描述网页 二、什么是HTML 标签 H…

Java项目:102SSM汽车租赁系统

博主主页:Java旅途 简介:分享计算机知识、学习路线、系统源码及教程 文末获取源码 一、项目介绍 汽车租赁系统基于SpringSpringMVCMybatis开发,系统使用shiro框架做权限安全控制,超级管理员登录系统后可根据自己的实际需求配角色…

Kasada p.js (x-kpsdk-cd、x-kpsdk-cd、integrity)

提供x-kpsdk-cd的API服务 详细请私信~ 可试用~ 一、简述 integrity是通过身份验证Kasada检测机器人流量后获得的一个检测结果(数据完整性) x-kpsdk-cd 是经过编码计算等等获得。当你得到正确的解决验证码值之后,解码会看到如下图 二、cook…

【Pytorch】学习记录分享8——PyTorch自然语言处理基础-词向量模型Word2Vec

【Pytorch】学习记录分享7——PyTorch自然语言处理基础-词向量模型Word2Vec 1. 词向量模型Word2Vec)1. 如何度量这个单词的?2.词向量是什么样子?3.词向量对应的热力图:4.词向量模型的输入与输出![在这里插入图片描述](https://img-blog.csdni…

Volume Control 2

为游戏添加音乐和音效总是需要一些编码来设置一个系统来控制、显示和保存应用程序的音量设置。 音量控制的设计是为了立即为您设置这些内容,让您有更多时间专注于最重要的事情——制作出色的游戏! 在版本2中,我们对系统进行了重新设计,使其更加模块化、灵活,甚至更易于使用…

RHCE9学习指南 第13章 硬盘管理

新的硬盘首先需要对硬盘进行分区和格式化,首先了解一下硬盘的结构,如图13-1所示。 图13-1 磁盘上的磁道和扇区 硬盘的磁盘上有一个个的圈,每两个圈组成一个磁道。从中间往外发射线,把每个磁道分成一个个的扇区,每个扇…

Qt基础之四十五:Qt国际化(I18N)

国际化的英文表述为Internationalization,通常简写为I18N(首尾字母加中间的字符数),这种奇葩的缩写方式,让我想起了NBA球星“字母哥”。 下面看下Qt实现的动态语言切换效果。 一.效果 二.源码 QHSettingDialog.h #ifndef QHSETTINGDIALOG_H #define QHSETTINGDIALOG_H#…

Grafana监控数据可视化

Grafana 是一个可视化面板,有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器,支持 Graphite、zabbix、InfluxDB、Prometheus、OpenTSDB、Elasticsearch 等作为数据源,比 Prometheus 自带的图表展示功能强大太多&am…

【MySQL】主从异步复制配置

您好,我是码农飞哥(wei158556),感谢您阅读本文,欢迎一键三连哦。 💪🏻 1. Python基础专栏,基础知识一网打尽,9.9元买不了吃亏,买不了上当。 Python从入门到精…

删除数据后, redis 内存占用还是很高怎么办?

现象: reids 做了数据删除,数据量不大,使用 top 命令看,发现还是占用大量内存 原因: 1.redis 底层内存根据内存分配器分配,不会立刻释放 2.redis 释放的内存空间不是连续的,存在碎片 内存碎…

软件开发新手用哪个IDE比较好?软件开发最好的IDE都在这!

目录 IDES 的优点 最佳编程 IDE 列表 Java 开发的流行集成开发环境 JetBrains 的 IntelliJ IDEA NetBeans 适用于 C/ C、C# 编程语言的最佳 IDE Visual Studio 和 Visual Studio 代码 Eclipse PHP 开发的最佳 IDE PHPStorm Sublime Text Atom JavaScript 的顶级 I…

多线程编程设计模式(单例,阻塞队列,定时器,线程池)

💕"只有首先看到事情的可能性,才会有发生的机会。"💕 作者:Mylvzi 文章主要内容:多线程编程设计模式(单例,阻塞队列,定时器,线程池) 本文主要讲解多线程编程中常用到的设计模式,包括单例模式,阻塞队列,定时…

Go语言中的HTTP重定向

大家好,我是你们可爱的编程小助手,今天我们要一起探讨如何使用Go语言实现HTTP重定向,让我们开始吧! 大家都知道,网站开发中有时候需要将用户的请求从一个URL导向到另一个URL。比如说,你可能想将旧的URL结构…

宏集方案 | 物联网HMI的关键驱动力—SCADA级功能库和控件库

来源:宏集科技 工业物联网 宏集方案 | 物联网HMI的关键驱动力—SCADA级功能库和控件库 原文链接:https://mp.weixin.qq.com/s/UEPtpTehdbFrw3MUCnuR2A 欢迎关注虹科,为您提供最新资讯! 01 前言 在这个数字化时代,物…

iptables防火墙(二)

目录 1、SNAT策略及应用 1.1、SNAT 策略概述 1.2、SNAT 策略的应用 2、DNAT 策略及应用 2.1、DNAT 策略概述 2.2、DNAT 策略的应用 3、规则的导出、导入 3.1、规则的备份及还原 3.2、使用 iptables 服务 4、使用防火墙脚本 4.1、防火墙脚本的构成 &#xf…

Qt 5.9.4 转 Qt 6.6.1 遇到的问题总结(一)

最近公司对大家的开发的硬件环境进行了升级,电脑主机的配置、显示器(两台大屏显示器)变得的逼格高多了。既然电脑上的开发环境都需要重装,就打算把开发环境也升级到最新版本,要用就用最新版本。下面对升级后的开发环境…