当前位置: 首页 > news >正文

Web 技术与 Nginx 网站环境部署

这里写目录标题

    • 一. Web基础
      • 域名和DNS
        • 域名的概念
        • 域名的结构
        • 域名结构类型
      • Hosts文件
        • Hosts文件的作用
        • 修改Hosts文件
      • DNS
      • 域名注册
    • 网页与HTML
      • 网页概述
      • HTML概述
      • HTML基本标签
        • HTML语法规则
        • HTML文件结构
      • 网站和主页
      • Web1.0 与 Web2.0
    • 静态网页与动态网页
      • 静态网页
      • 动态网页
      • 动态网页语言
    • HTTP协议
      • HTTP协议概述
      • HTTP方法
      • HTTP状态码
      • HTTP请求流程分析
        • 请求报文
        • 响应报文
    • Nginx网站环境部署
      • Nginx服务基础
      • 编译安装Nginx
        • 安装支持软件
        • 创建用户、组
        • 编译安装Nginx
      • Nginx的运行控制
        • 检查配置文件
        • 启动、停止Nginx
        • 添加Nginx系统服务
      • 配置文件nginx.conf
        • 全局配置
        • I/O事件配置
        • HTTP配置
        • 访问状态统计

一. Web基础

域名和DNS

域名的概念

网络是基于 TCP/P 协议进行通信和连接的,每一台主机都有一个唯一的标识(固 定的IP地址),用以区别在网络上成千上万个用户和计算机。网洛在区分所有与之相 连的网络和主机时,均采用一种唯一、通用的地址格式,即每一个与网络相连接的计算机和服务器都被指派一个独一无的地址。为了保证网络上每台计算机的IP 地址的唯 一性,用户必须向特定机构申请注册,分配!P 地址。网络中的地址方案分为两套:IP地址系统和域名地址系统。这两套地址系统其实是一-对应的关系。|P地址用二进制数来表示,每个!P 地址长32 比特,由4 个小于 256 的数字组成,数字之间用点间隔,例如 100.10.0.1表示一个|P 地址。由于IP 地址是数字标识,使用时难以记忆和书写,因此在 IP地址的基础上又发展出一种符号化的地址方案,来代替数字型的IP地址。每 一个符号化的地址都与特定的IP地址对应,这样网络上的资源访问起来就容易得多了。 这个与网络上的数字型!P地址相对应的字符型地址,就被称为域名。

域名的结构

以一个常见的域名为例说明其结构。图中,www.baidu.com 网址是由二部分组 成,标号"baidu"是这个域名的主体,而最后的标号"com”则是该域名的后缀,代表的这是一个com 国际域名,是顶级域名,而前面的 www 是主机名。

在这里插入图片描述

DNS 规定,域名中的标号都由英文字母和数字组成,每一个标号不超过 63个字符,也不区分大小写字母。标号中除连字符(-)外不能使用其他的标点符号。级别最低的域名写在最左边,而级别最高的域名写在最右边。由多个标号组成的完整域名总共不超 过 255 个字符。一些国家也纷纷开发使用采用本民族语言构成的域名,如德语,法语等。中国也开 始使用中文域名,但可以预计的是,在中国国内今后相当长的时期内,以英语为基础的域名(即英文域名)仍然是主流。

域名结构类型
类型含义
根域指的是根服务器,要用来管理互联网的主目录,全世界只有13台。1个为 主根服务器,放置在美国。其余 12 个均为辅根服务器,其中9个放置在美国;欧洲2个,位F英国和瑞典;亚洲1个,位于日本。所有根服务器均由美国政府授权的互联网域名与号码分配机构 ICANN 统一管理,负责全球互联网域名根服务器、域名体系和 IP 地址等的管理
顶级域包括组织域和国家/地区域名。域名的最右侧是国家/地区域名,国家代码 由两字母组成的如.cn,.uk,.de 和.jp, 其中.cn 是中国专用的顶级域名。在国家/地区或名左侧,是组织域名,常见的.com 用于商业机构,.net 用于网络组织,.org 用于各种且织包括非盈利组织
二级域名在顶级域名之前的域名,在顶级域名前面,它是指域名注册人的网上名称,例如 baidu,ibm,yahoo ,microsoft 等
FQDN是主机名.DNS 后缀,是指主机名加上全路径,全路径中列出了序列中所有 域成员。全域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主 机名的一种完全表示形式。从全域名中包含的信息可以看出主机在域名树中的位置

Hosts文件

Hosts 文件是一个用于存储计算机网络中节点信息的文件,它可以将主机名映射到相应的IP 地址,实现DNS的功能,它可以由计算机的用户进行修改控制。

Hosts文件的作用

在网络上访问网站,要首先通过 DNS 服务器把要访问的域名解析成 IP 地址后计 算机才能对这个网络域名作网站进行访问。在网络上访问网站要首先通过 DNS 服务器把要访问的域名解析成 IP 地址后,计 算机才能对这个网络域名作网站进行访问。对于每个域名请求,如果都要等待域名服务器解析后返回 IP 信息,那么访问网络 的效率就会降低,因为 DNS 做域名解析和返回 IP 都需要时间。为了提高对经常访问的 网络域名的解析效率,可以通过利用在 Hosts 文件中建立域名和IP的映射关系来达到 目的。根据系统规定,在进行DNS请求以前,系统会先检查自的 Hosts 文件中是否 有这个网络域名映射关系。如果有则调用这个!P 地址映射,如果没有,再向已知的 DNS 服务器提出域名解析,即 HOsts 的请求级别比 DNS 高。

修改Hosts文件

Windows 系统中Hosts 文件存储在目录c:lwindowslsystem32\drivers\etc\下面,用记事本可以对其进行修改,CentOS 系统中Hosts 文件存储在目录/etc/目录下面,用vim/etc/hosts 可以对其进行修改,如在文件中加上以下代码。

Windows系统:

在这里插入图片描述

Linux传统:

在这里插入图片描述

在这里插入图片描述

当访问 www.baidu.com 时,发现本机 hosts 文件中有映射的 IP 地址,则访问这个 IP 地址

DNS

在互联网上域名与IP 地址之间是一一对应的,域名虽然便于人们记忆,但机器之间只能互相认识IP 地址,它们之间的转换工作称为域名解析,域名解析要由专门的域名解析系统来完成,DNS 就是进行域名解析的系统。

主机名到 IP 地址的映射有两种方式:

含义
静态映射每台设备上都配置主机到IP地址的映射,各设备独立维护自己的映射 表,而且只供本设备使用
动态映射建立一套域名解析系统(DNS),只在专门的DNS服务器上配置主机 到 IP 地址的映射,网络上需要使用主机名通信的设备,首先需要到 DNS服务器查询主机所对应的IP 地址

通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解 析)。在解析域名时,可以首先采用静态域名解析的方法。如果静态域名解析不成功,再采用动态域名解析的方法。可以将一些常用的域名放入静态域名解析表中,这样可以 大大提高域名解析效率。在 Windows 命令行模式中输入网络査询命令 nslookup www.baidu.com,可以査询 到域名对应的 IP 地址。

域名注册

域名注册是 intemet 中用于解决地址对应问题的一种方法。域名注册遵循先中请先注册原则,管理机构对申请人提出的域名是否违反了第三方的权利不进行任何实质审 查。每个域名都是独一无二的,不可重复的。域名注册的所有者都是以域名注册提交人填写域名订单的信息为准的,成功24 小时后,即可在国际(ICANN)、国内(CNNIC)管理机构査询 whois 信息(域名所有 者等信息)。

下面是域名注册步骤:

(1)淮备申请资料:com 域名无需提供身份证、营业执照等资料,cn 域名已开放 个人申请注册,所以申请则需要提供身份证或企业营业执照

(2)寻找域名注册网站 :由于.com、.cn 域名等不同后缀均属于不同注册管理机构 所管理,如要注册不同后缀域名则需要从注册管理机构寻找经过其授权的顶级域名注册服务机构。如 com 域名的管理机构为 ICANN,cn 域名的管理机构为CNNIC(中国豆 联网络信息中心)。若注册商已经通过 ICANN、CNNIC 双重认证,则无需分别到其他 注册服务机构申请域名

(3)查询域名 :在域名注册查询网站注册用户名成功后并查询域名,选择要注册的 域名,并点击注册

(4)正式申请 :查到想要注册的域名,并且确认域名为可申请的状态后,提交注册,并缴纳年费

(5)申请成功:正式申请成功后,即可开始进入 DNS 解析管理、设置解析记录等操作

网页与HTML

网页是构成网站的基本元素,是承载各种网站应用的平台。通俗地说,网站就是由 网页组成的。如果只有域名和虚拟主机而没有制作任何网页,那么客户仍旧无法访问这个网站。因为网页是由HTML(超文本标记语言)编写的。

网页概述

网页是一个文件,他存放在世界某个角落的某一部计算机中,而这部计算机必须是与互联网相连的。网页经由网址(URL)来识别与存取,是互联网的"一页"

网页可以包括如下内容:

概述
文本文本是网页上最重要的信息载体与交流工具,网页中的主要信息一般都以文 本形式为主
图像图像元素在网页中具有提供信息并展示直观形象的作用
静态图像在页面中可能是图片或矢量图形。图片格式通常为GIF、JPEG 或 PNG 等;矢量格式通常为 SVG 或 Flash
动画图像通常动画为 GIF 和 SVG
Flash 动画动画在网页中的作用是有效地吸引访问者更多的注意
声音声音是多媒体和视频网页重要的组成部分
视频视频文件的采用使网页效果更加精彩且富有动感
表格表格是在网页中用来控制页面信息的布局方式
导航栏导航栏在网页中是一组超链接,其连接的目的端是网页中重要的页面
交互式表单表单在网页中通常用来联接数据库并接受访问用户在浏览器端输入的 数据,利用数据库为客户端与服务器端提供更多的互动

网页相关概念如下:

概述
HTTP用来传输网页的通信协议,使用浏览器访问网址时,在域名前面要加上 http: ,表示使用 http协议传输网页
URL是一种万维网寻址系统,表示网络上资源的位置路径
HTML是编写网页的超文本标记语言
超链接具备将网站中不同网页链接起来的功能
发布将制作好的网页上传到服务器供用户访问的过程

HTML概述

HTML叫做超文本标记语言,是一种规范,也是一种标准,它通过标记符号来标记,要显示的网页中的各个部分。网页文件本身是一种文本文件,通过在文本文件中添加标 记符,可以告诉浏览器如何显示其中的内容。如:文字如何处理,画面如何安排,图片 如何显示等。浏览器按顺序阅读网页文件,然后根据标记符解释和显示其标记的内容,对书写出错的标记将不指出其错误,且不停止其解释执行过程,开发者只能通过显示效 果来分析出错原因和出错部位。但需要注意的是,不同的浏览器,对同一标记符可能会有不完全相同的解释,因而可能会有不同的显示效果。

HTML基本标签

HTML语法规则

HTML 标签采用双标记符的形式,前后标记符对应,分别表示标记开始和结束,标记符中间的内容被标签描述。前标记符由“"表示,结尾标记符多了一个“!”由“”表示。

HTML文件结构

HTML文件最外层由表示,说明该文件是用 HTML语言描述的。在它里面是并列的头标签()和内容标签(),最基本的 HTML 文件结构如下:

<html>
<head>网页的内容描述信息<head>
<body>网页显示的内容
</body> </html>

常见的头标签中的标签如表:

标签描述
< title >定义了文档的标题
< base >定义了页面链接标签的默认链接地址
< link >定义了一个文档和外部资源之间的关系
< meta >定义了 HTML 文档中的元数据
< script >定义了客户端的脚本文件
< style >定义了 HTML 文档的样式文件

内容标签中常用的标签如表:

标签描述
< table >定义一个表格
< tr >定义了表格中的一行
< td >定义了表格中某一行的一列
< a >定义了一个超链接a
< br >定义了换行
< font >定义了字体

网站和主页

网站是由网页组成的,包含多个网页页面,具有独立域名、独立存放空间的内容集 合,这些内容可能是网页,也可能是程序或其他文件。

主页(首页)是用户打开浏览器时默认打开的网页。当一个网站服务器收到一台电,脑上网络浏览器的消息连接请求时,便会向这台计算 机发送这个文档。当在浏览器的地址栏输入域名,而未指向特定目录或文件时,通常浏览器会打开网站的首页。网站首页往往会被编辑得易于了解该网站提供的信息,并引导 互联网用户浏览网站其他部分的内容。这部分内容一般被认为是一个目录性质的内容。

Web1.0 与 Web2.0

Web1.0 是指早期互联网模式,以门户网站为主,内容由网站运营商提供,以大 的点击量和增值服务为主盈利手段。

(1)Web1.0 基本采用的是技术创新主导模式,信息技术的变革和使用对于网站的 新生与发展起到了关键性的作用。新浪最初就是以技术平台起家,腾讯以即时通讯技术 起家,盛大以网络游戏起家,在这些网站的创始阶段,技术性的痕迹相当之重.

(2)Web1.0 的盈利都基于一个共通点,即巨大的点击流量。无论是早期融资还是后期获利,依托的都是为数众多的用户和点击率,以点击率为基础上市或开展增值服务, 受众群众的基础,决定了盈利的水平和速度,充分地体现了互联网的眼球经济色彩。

Web2.0是相对于 Web1.0的新的时代。指的是一个利用Web 的平台,由用户主 导而生成的内容互联网产品模式,如博客、社交网站等。为了区别传统由网站雇员主导 生成的内容而定义为第二代互联网,即Web2.0,是一个新的时代。特征如下:

(1)用户分享。在Web2.0 模式下,可以不受时间和地域的限制分享各种观点。用户可以得到自己需要的信息也可以发布自己的观点。
(2)以兴趣为聚合点的社群。在Web2.0 模式下,聚集的是对某个或者某些问题感兴趣的群体,可以说,在无形中已经产生了细分市场
(3)开放的平台,活跃的用户。平台对于用户来说是开放的,而且用户因为兴趣而保持比较高的忠诚度,他们会积极的参与其中

静态网页与动态网页

静态网页

在网站设计中,纯粹 HTML格式的网页通常被称为“静态网页”,静态网页是标准的 HTML 文件,它的文件扩展名是.htm、.html 。 静态网页是网站建设的基础,早期的网 站一般都是由静态网页制作的。静态网页也可以出现各种动态的效果,如.GIF 格式的动画、FLASH、滚动字幕等。这些“动态效果”只是视觉上的。

动态网页

所谓的动态网页,是指跟静态网页相对的一种网页编程技术。静态网页,随着 HTML代码的生成,页面的内容和显示效果就基本上不会发生变化了-除非是修改页面代码。而动态网页则不然,页面代码虽然没有变,但是显示的内容却是可以随着时间、环境或者数据库操作的结果而发生改变的。动态网页URL的后缀不是:htm、.html、.shtm1、.xm!等静态网页的常见网页制作格式,而是以.aspx、.asp、Jjsp、php、.per.cqi 等形式为后缀,并且在动态网页网址中有一个 标志性的符号-“?”

动态网页是基本的 html语法规范与Java、PHP、C#等高级程序设计语言、数据库 编程等多种技术的融合,以期实现对网站内容和风格的高效、动态和交互式的管理。因 此,从这个意义上来讲,凡是结合了HTML以外的高级程序设计语言和数据库技术进行 的网页编程技术生成的网页都是动态网页。

动态网页语言

早期的动态网页主要采用通用网关接口 CGI(Common Gateway Interface)技术,虽然CG!技术已经发展成熟而且功能强大,但由于编程困难、效率低下、修改复杂,所以有逐渐被新技术取代的趋势。

目前常用的动态网页编程语言如下:

语言含义
PHP 即 Hypertext Preprocessor(超文本预处理器)它是当今 Intemet 上最为火 热的脚本语言,其语法借鉴了C、Java、PERL 等语言,但只需要很少的编程知识 你就能使用 PHP 建立一个真正交互的 web 站点
JSP 即 Java Server Pages(Jav 服务器页面)它是由 Sun Microsystem 公司于 1999 年6月推出的新技术,是基于 java Seryilet 以及整个ava 体系的 Web 开 发技术
Pyhon是一种面向对象、跨平台的动态类计算机程序设计语言,最初被设计用于 编写自动化脚本(she11),随着版本的不断更新和语言新功能的添加,越来越多被用 于独立的大型项目开发
Ruby是一种简单快捷的面向对象(面向对象程序设计)脚本语言,在 20世纪,90 年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守 GPL,协议和Ruby License.它的灵感与特性来自于 Perl、$malltalk、Eifel、Ada 以及 Lisp 语言

HTTP协议

超文本传输协议(HTTP ,HyperText Transfer Protocol)是互联网上应用最为厂泛的一种网络协议。所有的网页文件都必须遵守这个标准。设计 HTTP 最初的目的是为提供一种发布和接收 HTML 页面的方法。

HTTP协议概述

HTTP 协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URL、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME 的消息结构。服务器以一个状态行作为响应,响应的内容包括消息协议的版本,成功或者错误编码加上服务器信息、实体元信息以及可能的实体内容。

HTTP 已经演化出了很多版本,它们中的大部分都是向下兼容的

(1)HTTP/0.9已过时。只接受 GET一种请求方法,没有在通讯中指定版本号且不支持请求头。由于该版本不支持POST方法,所以客户端无法向服务器传递太多信息。

(2)HTTP/1.0 这是第一个在通讯中指定版本号的 HTTP 协议版本,至今仍被广泛 采用,特别是在代理服务器中。

(3)HTTP/1.1当前版本。持久连接被默认采用,并能很好地配合代理服务器工作。还支持以管道方式同时发送多个请求,以便降低线路负载提高传输速度

HTTP方法

HTTP 支持几种不同的请求命令,这些命令被称为 HTTP 方法(HTTP method)每条 HTTP 请求报文都包含一个方法,告诉服务器要执行什么动作,包括:获取一个页面,运行一个网关程序,删除一个文件等。最常用的获取资源的方法是GET、POSTIHTTP 常用方法如表所示

HTTP方法描述
GET请求获取 Request-URl 所标识的资源
PUT请求服务器存储一个资源,并用 Request-URl 作为其标识
DELETE请求服务器删除 Request-URl 所标识的资源
POST在 Request-URl 所标识的资源后附加新的数据
HEAD请求获取由 Request-URl 所标识的资源的响应消息报头

GET方法采用的是 URL后缀的形式,比如 htp:/wwtest.comla.php?ld=123 就是一个 GET 请求,服务器接收后可以解析出 Id=123。而POST方法不需要在 URL 中 显示”?ld=123",参数作为内容进行了隐藏的提交。因此,表单类或者有用户名、密码 等内容提交时建议使用 POST方法。GET方法在 URL 上显示参数,而 URL 是有长度限制,故不适合提交过大的数据。 GET方法可以被浏览器缓存,当请求已经被请求过一次的 URL 时,浏览器不需要向服 务器再次发出请求,直接在本地缓存中获得页面。GET 和POST方法对比如表所示。

GET方法POST方法
对数据长度的限制URL 的长度是受限制的(URL:的最大长度是2048个字符)无限制
缓存能被缓存不能缓存
安全性与 POST 相比,GET 的安全性较差为所发送的数据是 URL 的一部分因在发送密码或其他敏感信息时绝不要使用 GETPOST 比 GET 更安全,因为 参数不会被保存在浏览器历史 或Web服务器日志
历史参数保留在浏览器历史中参数不会保存在浏览器历史中
后退按钮/刷新无害数据会被重新提交,浏览器应该告知用户数据会被重新提交
书签可收藏为书签不可收藏为书签

HTTP状态码

HTTP 状态码(HTTP Status Code )是用以表示网页服务器 HTTP响应状态的3 位数字代码,当浏览器请求某一URL 时,服务器根据处理情况返回相应的处理状态。

HTTP 状态码可以分为五大类,如图 1.2 所示。其中 1XX 表示信息提示,2XX、3XX 表 示请求正常,4XX、5XX 表示出现异常情况。

状态码首位已定义范围分类
1xx100-101信息提示
2xx200-206成功
3xx300-305重定向
4xx400-415客户端错误
5xx500-505服务器错误

生产环境常见的状态码如表:

消息描述
200 OK请求成功(其后是对GET 和POST 请求的应答文档)
301 Moved Permanently请求的永久页面跳转
403 Forbidden禁止访问该页面
404 Not Found服务器无法找到被请求的页面
500 Internet Server Error内部服务器错误
502 Bad Gateway无效网关
503 Service Unavailable当前服务不可用
504 Gateway Timeout网关请求超时

HTTP请求流程分析

用户在浏览器输入 URL 访问时,发起HTTP 请求报文,请求中包括请求行、请求头、请求体,服务器收到请求后返回响应报文,包括状态行、响应头、响应体,如图所示。
在这里插入图片描述

请求报文
  • 请求行:请求行由请求方法、URL以及协议版本三部分

  • 组成请求头:请求头为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔,常用的请求头如表所示。

请求头描述
Host接受请求的服务器地址,可以是IP:端口号,也可以是域名
User-Agent发送请求的应用程序名称
Connection指定与连接相关的属性,如Connection:Keep-Alive
Accept-Charset通知服务端可以发送的编码格式
Accept-Encoding通知服务端可以发送的数据压缩格式
Accept-Language通知服务端可以发送的语言
  • 空行:请求头部的最后会有一个空行,表示请求头部结束,接下来为请求体,这一 行非常重要,必不可少
  • 请求体:请求体是请求提交的参数,GET 方法已经在URL中指明了参数,所以提交时没有数据。POST 方法提交的参数在请求体中
响应报文
  • 状态行:状态行由协议版本,状态码,状态码描述三部分组成

  • 响应头: 响应头与请求头部类似,为响应报文添加了一些附加信息。常见响应头部如表所示

响应头描述
Server服务器应用程序软件的名称和版本
Content-Type响应正文的类型(是图片还是二进制字符串)
Content-Length响应正文长度
Content-Charset响应正文使用的编码
Content-Encoding响应正文使用的数据压缩格式
Content-Language响应正文使用的语言
  • 空行:响应头部的最后会有一个空行,表示响应头部结束

  • 响应体:服务器返回的相应HTML 数据,浏览器对其解析后显示页面

Nginx网站环境部署

在各种网站服务器软件中,除了 Apache HTTP Server 外,还有一款轻量级的 HTTP 服务器软件–Nginx,由俄罗斯的 lgor Sysoev 开发,其稳定、高效的特性逐渐被越来越多的用户认可。本章将讲解 Nginx 服务的基本构建、访问控制方式、虚拟主机的搭建,还有应用广泛的LNMP 架构服务器的部署方式,并对 PHP FPM 模块如何支持 PHP 语言进行讨论。

Nginx服务基础

Nginx(发音为[engine x])专为性能优化而开发,其最知名的优点是它的稳定性和低统资源消耗,以及对 HTTP 并发连接的高处理能力(单台物理服务器可支持 30000~50080 个并发请求)。正因为如此,大量提供社交网络、新闻资讯、电子商务及虚拟主机等服务的企业纷纷选择 Nginx 来提供 web 服务。

编译安装Nginx

安装支持软件

在这里插入图片描述

创建用户、组

在这里插入图片描述

编译安装Nginx

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Nginx的运行控制

检查配置文件

在这里插入图片描述

启动、停止Nginx

直接运行 Nginx 即可启动 Nginx 服务器,这种方式将使用默认的配置文件,若要改用其他配置文件,需添加“-c配置文件路径”选项来指定路径。需要注意的是,若服务器中已装有 httpd 等其他 Web 服务软件,应采取措施(修改端口.停用或卸载)避免冲突。

在这里插入图片描述

通过检査 Nginx 程序的监听状态,或者在浏览器中访问此,Web 服务(默认页面将显示"Welcome to nginx!”),可以确认 Nginx 服务是否正常运行

在这里插入图片描述

添加Nginx系统服务
[root@localhost ~]# cd /lib/systemd/system
[root@localhost system]# vim nginx.service
[Unit]
Description=The NGINX HTTP and reverse proxy server
After=network.target[Service]
Ttpe=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
#ExecStartPre=/usr/local/sbin/nginx -t
ExecStart=/usr/local/sbin/nginx
ExecStop=/usr/local/nginx -s stop
ExecReload=/usr/local/sbin/nginx -s reload[Install]
WantedBy=multi-user.target
[root@localhost system]# systemctl daemon-reload
[root@localhost system]# systemctl start nginx
[root@localhost system]# systemctl restart nginx

配置文件nginx.conf

全局配置
[root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf#user nobody;                ##运行用户
worker processes 1;    ##工作进程数量
#error log logs/error.log;    ##错误日志文件的位置
#pid logs/nginx.pid;            ##PID 文件的位置
I/O事件配置
events{
use epoll;            ##使用 epoll 模型
worker connections 4096;        ##每进程处理 4096 个连接
}

备注:
epoll 模式能够提高并发连接,并支持非活跃连接

HTTP配置

在这里插入图片描述

访问状态统计

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

相关文章:

Web 技术与 Nginx 网站环境部署

这里写目录标题 一. Web基础域名和DNS域名的概念域名的结构域名结构类型 Hosts文件Hosts文件的作用修改Hosts文件 DNS域名注册 网页与HTML网页概述HTML概述HTML基本标签HTML语法规则HTML文件结构 网站和主页Web1.0 与 Web2.0 静态网页与动态网页静态网页动态网页动态网页语言 H…...

分布式天线系统 (DAS, Distributed Antenna System)

1. 概述 分布式天线系统&#xff08;DAS&#xff09; 是一种通过多个分散的天线节点来增强无线信号覆盖和容量的网络架构。它主要用于解决大型建筑、地下设施、体育场馆等场景中的信号盲区或容量不足问题。 2. 主要组成 DAS系统通常包括以下关键组件&#xff1a; 信号源&…...

hexo博客搭建使用

搭建 Hexo 演示主题为&#xff1a;Keep 使用 文章 创建新文章 ➜ zymore-blog-keep git:(main) ✗ hexo new "告别H5嵌入&#xff01;uniApp小程序文件下载与分享完整解决方案" INFO Validating config INFO Created: ~/Desktop/HelloWorld/zymore-blog-k…...

Git上传项目到GitHub

Git上传项目到GitHub 下载Git客户端配置Git设置GitHub上传本地项目到Github 下载Git客户端 网址&#xff1a;Git Windows客户端。选择Standalone Installer(单独安装程序)&#xff0c;并点击64bit Git for Windows Setup(64位Git for Windows安装程序)进行下载。然后一路默认选…...

隨筆20250519 Async+ThreadPoolTaskExecutor⾃定义线程池进阶实战

1.ThreadPoolTaskExecutor线程池 有哪⼏个重要参数&#xff0c; 什么时候会创建线程 1.核心綫程數 查看核心綫程數目是否已經滿&#xff0c;未滿 創建一條綫程 執行任務&#xff0c;已滿負責執行第二部 2.阻塞隊列 查看阻塞隊列是否已經滿&#xff0c;未滿將任務加入阻塞隊列&…...

YoloV8改进策略:卷积篇|风车卷积|即插即用

文章目录 论文信息论文翻译摘要引言相关研究红外搜索与跟踪检测和分割网络红外搜索与跟踪数据集的损失函数红外搜索与跟踪数据集方法风车形卷积(PConv)基于尺度的动态损失SIRST - UAVB数据集实验实验设置与其他方法的比较多模型上的消融实验结论致谢代码改进方法测试结果总结…...

HGDB中如何为表增加自增主键

文章目录 环境文档用途详细信息 环境 系统平台&#xff1a;N/A 版本&#xff1a;4.5 文档用途 本文主要介绍在瀚高数据库中如何为表增加新主键&#xff0c;便于业务改造和查询。 实现原理&#xff1a;通过添加序列自增字段和唯一约束实现。 详细信息 可以根据数字类型来设…...

升级mysql (rpm安装)

#备份以防万一 备份配置文件: /etc/my.cnf.d/server.cnf 备份数据: mysqldump -u your_username -p --all-databases > all_databases.sql #停止 systemctl stop mysql #卸载旧版 yum remove mariadb #安装新版( 通过yum安装报错,死活安装不了,只能rpm安装) 下载地址…...

ALTER COLLATION使用场景

ALTER COLLATION 是 SQL 中用于修改字符集排序规则&#xff08;Collation&#xff09;的操作。排序规则定义了字符数据的比较和排序方式&#xff0c;包括字母顺序、大小写敏感性、重音符号处理等。ALTER COLLATION 的使用场景主要集中在需要调整数据库或表的字符集排序规则时。…...

Python实例题:Python 实现简易 Shell

目录 Python实例题 题目 代码实现 功能说明 基本命令执行&#xff1a; 内置命令&#xff1a; 环境变量&#xff1a; 管道&#xff1a; 重定向&#xff1a; 信号处理&#xff1a; 使用方法 注意事项 Python实例题 题目 Python 实现简易 Shell 代码实现 import o…...

大中型病险水库大坝除险加固监测实施方案

一、方案背景 我国80%以上的水库修建于20世纪50至70年代&#xff0c;经过几十年的运行&#xff0c;大部分水库已超过设计使用年限&#xff0c;功能老化现象较严重&#xff0c;出现病险具有一定的客观性。受超标洪水、强烈地震等自然灾害影响&#xff0c;水库一旦遭遇突发暴雨洪…...

[长城杯 2024]anote

题解前的小吐槽:终于还是狠下心复现了一下长城杯的这个赛题&#xff0c;第一次觉得汇编比函数看的方便&#xff0c;不过这题好写是好写的[心虚](还是看了一些大佬的wp) [长城杯 2024]anote(堆溢出C) [长城杯 2024]anote 1.准备 motalymotaly-VMware-Virtual-Platform:~$ fi…...

verify_ssl 与 Token 验证的区别详解

verify_ssl 与 Token 验证的区别详解 在开发或调用 API 接口时&#xff0c;我们经常会遇到两个看似相关但实际上作用完全不同的安全参数&#xff1a; 传输层的 verify_ssl应用层的 Authorization&#xff08;最常见是 Bearer Token&#xff09; 虽然它们都与“安全”有关&am…...

Python集合

一、Python集合概述 Python集合(set)是一种无序、可变且不包含重复元素的数据结构。集合在Python中通过哈希表实现&#xff0c;这使得它在成员检测和去重操作中具有极高的效率。 集合与列表、元组的主要区别&#xff1a; 无序性&#xff1a;元素没有固定顺序 唯一性&#x…...

容器化-K8s-镜像仓库使用和应用

一、K8s 镜像仓库使用 1、启动镜像仓库 cd/usr/local/harbor ./install.sh2、配置镜像仓库地址 在 master 节点和 slaver 节点上,需要配置 Docker 的镜像仓库地址,以便能够访问本地的镜像仓库。编辑 Docker 的配置文件 vi /etc/docker/daemon.json(如果不存在则创建),添…...

解决报错 Flask-SQLAlchemy TypeError: ‘float‘ object is not callable

Flask-SQLAlchemy TypeError: ‘float’ object is not callable Flask-SQLAlchemy 与 Python 版本兼容性问题解决方案 日期&#xff1a;2025 年 5 月 19 日 分类&#xff1a;后端开发、Python、Flask 标签&#xff1a;Flask-SQLAlchemy, Python 版本兼容&#xff0c;错误修复…...

k8s节点维护的细节

k8s节点维护的细节 Kubernetes&#xff08;k8s&#xff09;节点维护是保障集群稳定运行的重要工作&#xff0c;涉及节点升级、故障排查、资源优化等多个方面。维护步骤和操作命令&#xff1a; 一、节点维护前的准备工作 1. 查看集群状态 kubectl get nodes # 查看所有节点状…...

基于STM32的光照测量报警Proteus仿真设计+程序设计+设计报告+讲解视频

基于STM32的光照测量报警仿真设计 1.**主要功能****2.仿真设计****3.程序设计****4.设计报告****5.下载链接** 基于STM32的光照测量报警仿真设计 (Proteus仿真程序设计设计报告讲解视频&#xff09; 仿真图Proteus 8.9 程序编译器&#xff1a;keil 5 编程语言&#xff1a;C语…...

Docker 运维管理

Docker 运维管理 一、Swarm集群管理1.1 Swarm的核心概念1.1.1 集群1.1.2 节点1.1.3 服务和任务1.1.4 负载均衡 1.2 Swarm安装准备工作创建集群添加工作节点到集群发布服务到集群扩展一个或多个服务从集群中删除服务ssh免密登录 二、Docker Compose与 Swarm 一起使用 Compose 三…...

五分钟本地部署大模型

前提&#xff1a;个人PC机&#xff0c;配置&#xff1a;CPU:i5-13600KF 显卡&#xff1a;RTX3080 内存&#xff1a;32GB 1.安装ollama 访问https://ollama.com/&#xff0c;点击下载&#xff0c;完成后傻瓜式安装即可&#xff1b; 2.修改环境变量 默认大模型下载在C盘&…...

RSA(公钥加密算法)

RSA&#xff08;Rivest-Shamir-Adleman&#xff09;是一种常见的公钥加密算法&#xff0c;广泛应用于安全通信中。它是由三位计算机科学家Ron Rivest、Adi Shamir和Leonard Adleman于1977年提出的&#xff0c;是一种基于数论问题的加密算法。 一、RSA的基本原理 RSA是基于大数…...

Go语言测试用例的执行与分析

在软件开发过程中&#xff0c;测试用例是确保代码质量的关键环节。Go语言作为一种现代的编程语言&#xff0c;它内置了强大的测试框架&#xff0c;可以帮助开发者轻松编写和执行测试用例。本文将介绍如何在 Go 语言中编写、执行测试用例&#xff0c;并对测试结果进行分析。 ## …...

动态规划-LCR 089.打家劫舍-力扣(LeetCode)

一、题目解析 结合示例1&#xff0c;我们能得知对于小偷而言不能连续偷相连的房间&#xff0c;且需要保证偷窃的金额最高。 二、算法解析 1.状态表示 我们想知道到最后一个房子时所偷窃的最高金额&#xff0c;所以dp[i]表示在i位置时&#xff0c;所偷到的最大价值。 但我们…...

leetcode hot100:解题思路大全

因为某大厂的算法没有撕出来&#xff0c;怒而整理该贴。只有少数题目有AC代码&#xff0c;大部分只会有思路或者伪代码。 技巧 只出现一次的数字 题目 给你一个 非空 整数数组 nums &#xff0c;除了某个元素只出现一次以外&#xff0c;其余每个元素均出现两次。找出那个只出…...

2022年下半年信息系统项目管理师——综合知识真题及答案(4)

2022年下半年信息系统项目管理师 ——综合知识真题及答案&#xff08;4&#xff09; 零、时光宝盒 &#xff08;https://blog.csdn.net/weixin_69553582 逆境清醒&#xff09; 双向奔赴的善意 网上看到的视频。 家里开包子店的男孩冒雨放学&#xff0c;路口的交警叔叔担心孩…...

大语言模型(LLM)本身是无状态的,怎么固化记忆

大语言模型(LLM)本身是无状态的,无法直接“记住”历史对话或用户特定信息 大语言模型(LLM)本身是无状态的,无法直接“记住”历史对话或用户特定信息,但可以通过架构改进、外部记忆整合、训练方法优化等方案实现上下文记忆能力。 一、模型内部记忆增强:让LLM“记住”…...

ISO 26262-5 硬件详细设计

7 Hardware detailed design 硬件详细设计个人理解包含各种理论计算和分析 为了避免常见的设计缺陷&#xff0c; 应运用相关的经验总结。 在硬件详细设计时&#xff0c; 应考虑安全相关硬件元器件失效的非功能性原因&#xff0c; 如果适用&#xff0c; 可包括以下的影响因素&…...

C# NX二次开发-求体、面的最小包容圆柱

NX自带ufun函数里有求体、面的最小包容方块。(UF_MODL_ask_bounding_box、UF_MODL_ask_bounding_box_aligned、UF_MODL_ask_bounding_box_aligned),但没有求最小包容圆柱。但有很多时候需要求最小包容圆柱。比如零件开圆棒料。这时需要通过一些方法来计算出最小包容圆柱。 …...

vue2.0 组件之间的数据共享

个人简介 &#x1f468;‍&#x1f4bb;‍个人主页&#xff1a; 魔术师 &#x1f4d6;学习方向&#xff1a; 主攻前端方向&#xff0c;正逐渐往全栈发展 &#x1f6b4;个人状态&#xff1a; 研发工程师&#xff0c;现效力于政务服务网事业 &#x1f1e8;&#x1f1f3;人生格言&…...

11.4/Q1,GBD数据库最新文章解读

文章题目&#xff1a;Global, regional, and national burden of neglected tropical diseases and malaria in the general population, 1990-2021: Systematic analysis of the global burden of disease study 2021 DOI&#xff1a;10.1016/j.jare.2025.04.004 中文标题&…...

【愚公系列】《Manus极简入门》048-自然探险之旅:“户外活动规划师”

&#x1f31f;【技术大咖愚公搬代码&#xff1a;全栈专家的成长之路&#xff0c;你关注的宝藏博主在这里&#xff01;】&#x1f31f; &#x1f4e3;开发者圈持续输出高质量干货的"愚公精神"践行者——全网百万开发者都在追更的顶级技术博主&#xff01; &#x1f…...

生命科学温控物流:现状、驱动因素与发展趋势深度洞察

在生命科学产业蓬勃发展的当下&#xff0c;生命科学温控物流作为保障药品、疫苗等温度敏感产品安全运输的关键环节&#xff0c;正受到越来越多的关注。根据QYResearch报告出版商调研统计&#xff0c;2031年全球生命科学温控物流市场销售额预计将达到3563.3亿元&#xff0c;年复…...

2025-2030年制造业数字化转型发展趋势展望

随着科技的飞速发展&#xff0c;数字化转型已成为制造业提升竞争力、实现高质量发展的核心路径。从2025年到2030年&#xff0c;这一趋势将进一步深化&#xff0c;新技术、新模式和新生态将为制造业注入强劲动力。作为小编&#xff0c;今天带大家一起来看看未来五年制造业数字化…...

OSD原理以及模块的讲解

一.原理讲解 1.OSD的概念&#xff1a; OSD(on-screen-display)中文名称是屏幕菜单调节显示方式&#xff0c;它的作用是对屏幕显示器做各种工作指标&#xff0c;包括&#xff1a;色彩、几何图形等进行调整&#xff0c;从而使得整个显示器得到最佳的状。 最常见的OSD调试就是在…...

SQL注入——Sqlmap工具使用

一、Sqlmap介绍 Sqlmap 是一个使用python语言开发的开源的渗透测试工具&#xff0c;可以用来进行自动化检测&#xff0c;利用 SQL 注入漏洞&#xff0c;获取数据库服务器的权限。它具有功能强大的检测引擎&#xff0c;针对各种不同类型数据库的渗透测试的功能选项&#xff0c;…...

如何有效提高海外社媒矩阵曝光率,避免封号风险?

在全球社交媒体营销的过程中&#xff0c;海外矩阵社媒的运营已经成为一个不可或缺的策略。通过建立多个社媒账号&#xff0c;可以有效地扩展市场覆盖、提高品牌曝光率&#xff0c;但与此同时&#xff0c;账号之间的关联问题也需要引起足够重视。过度的关联可能导致社媒平台对账…...

B树与B+树全面解析

B树与B树全面解析 前言一、B 树的基本概念与结构特性1.1 B 树的定义1.2 B 树的结构特性1.3 B 树的节点结构示例 二、B 树的基本操作2.1 查找操作2.2 插入操作2.3 删除操作 三、B 树的基本概念与结构特性3.1 B 树的定义3.2 B 树的结构特性3.3 B 树的节点结构示例 四、B 树与…...

代码随想录60期day41

完全背包 #include<iostream> #include<vector>int main() {int n,bagWeight;int w,v;cin>>n>>bagWeight;vector<int>weight(n);vector<int>value(n);for(int i 0;i <n;i){cin>>weight[i]>>value[i];}vector<vecotr&l…...

语言幻觉测试用例及相关策略总结

文章目录 语言幻觉测试用例及相关策略总结如何判断内容是否存在语言幻觉&#xff1f; 一、语言幻觉测试用例类型1.1 事实性错误测试用例 1&#xff1a;时效性强的事实用例 2&#xff1a;跨领域常识用例 3&#xff1a;动态变化的规则 **1.2 逻辑矛盾测试**用例 1&#xff1a;同一…...

云原生攻防1(基础介绍)

什么是云原生 云原生是一套技术体系和方法论。 云:表示应用程序位于云中 原生:表示应用程序从设计之初就考虑到云的环境,原生为云而设计,在云上以最佳状态运行。 CNCF(Cloud Native Compute Foundation) 是 Linux 基金会旗下的一个组织,主要作用是在推动以容器为中心的…...

云原生环境下的事件驱动架构:理念、优势与落地实践

📝个人主页🌹:慌ZHANG-CSDN博客 🌹🌹期待您的关注 🌹🌹 一、引言:从服务调用到事件流动的转变 随着云原生技术的兴起,软件架构正经历一场深刻变革。传统以请求响应为主的服务通信方式,在高度动态、分布式的云原生环境下暴露出诸多挑战:强同步耦合、高延迟链路…...

InternLM 论文分类微调实践(XTuner 版)

1.环境安装 我创建开发机选择镜像为Cuda12.2-conda&#xff0c;选择GPU为100%A100的资源配置 Conda 管理环境 conda create -n xtuner_101 python3.10 -y conda activate xtuner_101 pip install torch2.4.0cu121 torchvision torchaudio --extra-index-url https://downloa…...

kotlin Flow的技术范畴

Flow 是 Kotlin 中的技术&#xff0c;准确地说&#xff0c;它是 Kotlin 协程&#xff08;Kotlin Coroutines&#xff09;库的一部分&#xff0c;属于 Kotlin 的 异步编程范畴。 ✅ Flow 的归属与背景&#xff1a; 所属技术&#xff1a;Kotlin&#xff08;由 JetBrains 开发&am…...

PyTorch图像建模(图像识别、分割和分类案例)

文章目录 图像分类技术&#xff1a;改变生活的智能之眼图形识别技术图像识别过程图像预处理图像特征提取 图像分割技术练习案例&#xff1a;图像分类项目源码地址实现代码&#xff08;简化版&#xff09;训练结果&#xff08;简化版&#xff09;实现代码&#xff08;优化版&…...

系统安全应用

文章目录 一.账号安全控制1.基本安全措施①系统账号清理②密码安全控制 2.用户切换与提权①su命令用法②PAM认证 3.sudo命令-提升执行权限①在配置文件/etc/sudoers中添加授权 二.系统引导和登录控制1.开关机安全控制①调整bios引导设置②限制更改grub引导参数 三.弱口令检测.端…...

day53—二分法—搜索旋转排序数组(LeetCode-81)

题目描述 已知存在一个按非降序排列的整数数组 nums &#xff0c;数组中的值不必互不相同。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 < k < nums.length&#xff09;上进行了 旋转 &#xff0c;使数组变为 [nums[k], nums[k1], ..., nu…...

力扣面试150题--从前序与中序遍历序列构造二叉树

Day 43 题目描述 思路&#xff08;这题第一次没做出来&#xff0c;看了题解后理解&#xff09; 做法&#xff1a;哈希表递归 首先复习一下前序遍历和中序遍历&#xff0c; 前序遍历&#xff1a;中左右&#xff0c;这个不仅是遍历树的路线&#xff0c;同时对一个对于一个前序遍…...

win10 上删除文件夹失败的一个原因:sqlYog 备份/导出关联了该文件夹

在尝试删除路径为.../bak/sql的文件时&#xff0c;系统提示无权限操作。然而&#xff0c;关闭SQLyog后&#xff0c;删除操作成功完成。这表明SQLyog可能正在占用该文件&#xff0c;导致删除权限受限。关闭SQLyog后&#xff0c;文件被释放&#xff0c;删除操作得以顺利进行。建议…...

卷java、基础2

内部类 了解 1. 成员内部类&#xff08;了解&#xff09; 2. 静态内部类&#xff08;了解&#xff09; 实例化的写法 局部内部类&#xff08;看看就好&#xff09; 局部内部类是定义在在方法中、代码块中、构造器等执行体中。 匿名内部类&#xff08;重要&#xff09; 1.先…...

从 “龟速” 到流畅,英国 - 中国 SD-WAN 专线让分公司直连总部系统

对于在英国设立总部、国内开设分公司的企业而言&#xff0c;分公司访问总部内网系统常面临网络延迟高、连接不稳定等问题。传统网络方案难以满足跨国数据传输需求&#xff0c;而英国 - 中国 SD-WAN 国际组网专线凭借创新技术&#xff0c;为企业搭建起高效稳定的网络桥梁。 SD-W…...