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

企业网站架构部署与优化 --web技术与nginx网站环境部署

一、Web 基础

本节将介绍Web 基础知识,包括域名的概念、DNS 原理、静态网页和动态网页的 相关知识。

1、域名和DNS

1.1、域名的概念

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

1.2、域名的结构

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

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

1.3、域名结构类型

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

2、Hosts 文件

Hosts 文件是一个用于存储计算机网络中节点信息的文件,它可以将主机名映射到相应的IP 地址,实现DNS 的功能,它可以由计算机的用户进行修改控制。(1)Hosts 文件的作用
在网络上访问网站,要首先通过DNS 服务器把要访问的域名解析成IP 地址后,计 算机才能对这个网络域名作网站进行访问。
对于每个域名请求,如果都要等待域名服务器解析后返回IP 信息,那么访问网络的效率就会降低,因为DNS 做域名解析和返回IP 都需要时间。为了提高对经常访问的 网络域名的解析效率,可以通过利用在 Hosts 文件中建立域名和IP 的映射关系来达到 目的。根据系统规定,在进行DNS 请求以前,系统会先检查自己的Hosts 文件中是否 有这个网络域名映射关系。如果有则调用这个!P 地址映射,如果没有,再向已知的DNS 服务器提出域名解析,即 Hosts的请求级别比 DNS 高。(2)修改Hosts 文件
Windows 系统中Hosts 文件存储在目录c:lwindowslsystem32\driversletc|下面,用记事本可以对其进行修改,CentOs 系统中Hosts 文件存储在目录/etc/目录下面,用vim/etc/hosts 可以对其进行修改,如在文件中加上以下代码。

Windows:hosts

Centos:

vim /etc/hosts

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

3、DNS

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

主机名到 IP 地址的映射

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

通过主机名,最终得到该主机名对应的 IP 地址的过程叫做域名解析(或主机名解 析)。在解析域名时,可以首先采用静态域名解析的方法。如果静态域名解析不成功,再采用动态域名解析的方法。可以将一些常用的域名放入静态域名解析表中,这样可以 大大提高域名解析效率。

在 windows 命令行模式中输入网络査询命令 nslookup www.baidu.com,可以查询 到域名对应的 IP 地址。

4、域名注册

域名注册是 Internet 中用于解决地址对应问题的一种方法。域名注册遵循先申请先注册原则,管理机构对申请人提出的域名是否违反了第三方的权利不进行任何实质审 查。每个域名都是独一无二的,不可重复的。

域名注册的所有者都是以域名注册提交人填写域名订单的信息为准的,成功 24 小时后,即可在国际(ICANN)、国内(CNNIC)管理机构査询 whois 信息(域名所有 者等信息)。

域名注册步骤

准备申请资料com 域名无需提供身份证、营业执照等资料,cn 域名已开放 个人申请注册,所以申请则需要提供身份证或企业营业执照
寻找域名注册网站由于.com、.cn 域名等不同后缀均属于不同注册管理机构 所管理,如要注册不同后缀域名则需要从注册管理机构寻找经过其授权的顶级域名注册服务机构。如com 域名的管理机构为 ICANN ,cn 域名的管理机构为 CNNIC(中国互 联网络信息中心)若注册商已经通过 ICANN、CNNIC双重认证,则无需分别到其他 注册服务机构申请域名
查询域名在域名注册查询网站注册用户名成功后并查询域名,选择要注册的 域名,并点击注册
正式申请查到想要注册的域名,并且确认域名为可申请的状态后,提交注册,并缴纳年费
申请成功正式申请成功后,即可开始进入 DNS 解析管理、设置解析记录等 操作

二、网页与HTML

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

1、网页概述

网页是一个文件,他存放在世界某个角落的某一部计算机中,而这部计算机必须是与互联网相连的。网页经由网址(URL)来识别与存取,是互联网中的一“页”。网页可以包括如下内容:

网页内容类型

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

网页相关概念

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

2、HTML 概述

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

3、HTML 基本标签

3.1、HTML 语法规则

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

3.2、HTML文件结构

HTML 文件最外层由<html></htm>表示

说明该文件是用 HTML 语言描述的

头标签(<head>)

内容标签(<body>)

头部标签

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

内容标签

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

4、网站和主页

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

5、Web1.0与Web2.0

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


5.1、Web1.0

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

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

5.2、Web2.0

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

1>用户分享。

在Web2.0 模式下,可以不受时间和地域的限制分享各种观点。用户可以得到自己需要的信息也可以发布自己的观点。
2>以兴趣为聚合点的社群。

在Web2.0 模式下,聚集的是对某个或者某些问题感兴趣的群体,可以说,在无形中已经产生了细分市场。
3>开放的平台,活跃的用户。

平台对于用户来说是开放的,而且用户因为兴趣而保持比较高的忠诚度,他们会积极的参与其中。

三、静态网页与动态网页

1、静态网页

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

2、动态网页

所谓的动态网页,是指跟静态网页相对的一种网页编程技术。静态网页,随着 HTML 代码的生成,页面的内容和显示效果就基本上不会发生变化了一除非是修改页面代码。而动态网页则不然,页面代码虽然没有变,但是显示的内容却是可以随着时间、环境或者 数 据库操作的结果而发生改变的。动态网页URL的后不是 .htm、等静态网页的常见网页制作格式,而是.html、.shtml、。xmI以.aspx、.asp、.jsp、·php、·per1、.cgi 等形式为后缀,并且在动态网页网址中有一个 标志性的符号-“?”。
动态网页是基本的 html 语法规范与 Java、PHP、C#等高级程序设计语言、数据库 编程等多种技术的融合,以期实现对网站内容和风格的高效、动态和交互式的管理。因此,从这个意义上来讲,凡是结合了 HTML,以外的高级程序设计语言和数据库技术进行的网页编程技术生成的网页都是动态网页。

3、动态网页语言

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

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

四、HTTP 协议

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

1、HTTP 协议概述

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

HTTP/0.9已过时。只接受 GET 一种请求方法,没有在通讯中指定版本号且不支持请求头。由于该版本不支持 POST 方法,所以客户端无法向服务器传递太多信息
HTTP/1.0这是第一个在通讯中指定版本号的 HTTP协议版本,至今仍被广泛 采用,特别是在代理服务器中
HTTP/1.1当前版本。持久连接被默认采用,并能很好地配合代理服务器工作。
还支持以管道方式同时发送多个请求,以便降低线路负载,提高传输速度

2、HTTP 方法

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

HTTP方法

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

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

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

3、HTTP 状态码

HTTP 状态码(HTTP Status Code )是用以表示网页服务器 HTTP 响应状态的3 位数字代码,当浏览器请求某一URL 时,服务器根据处理情况返回相应的处理状态。
HTTP 状态码可以分为五大类,如图 所示。其中 1XX 表示信息提示,2XX、3XX 表 示请求正常,4XX、5XX 表示出现异常情况。

消息

描述

200 OK

请求成功(其后是对GET和POST请求的应答文档)

301 Moved Permanently

请求的永久页面跳转

302

临时重定向

304 Not Modified 

未修改,比如本地缓存的资源文件和服务器上比较时,发现并没有修改,服务器返回一个304状态码,告诉浏览器,你不用请求该资源,直接使用本地的资源即可。

403 Forbidden

禁止访问该页面,服务器拒绝请求

404 Not Found

服务器无法找到被请求的页面

500 Internal Server Error

内部服务器错误

502 Bad Gateway

无效网关

503 Service Unavailable

当前服务不可用

504 Gateway Timeout

网关请求超时

4、HTTP 请求流程分析

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

4.1、请求报文

请求行:请求行由请求方法、URL以及协议版本三部分组成。
请求头:请求头为请求报文添加了一些附加信息,由“名/值”对组成,每行一对,名和值之间使用冒号分隔,常用的请求头如表所示

HTTP 请求头

请求头描述
Host接受请求的服务器地址,可以是IP:端口号,也可以是域名
User-Agent发送请求的应用程序名称
Connection指定与连接相关的属性,如Connection:Keep-Alive
Accept-Charset通知服务端可以发送的编码格式
Accept-Encoding通知服务端可以发送的数据压缩格式
Accept-Language通知服务端可以发送的语言

空行:请求头部的最后会有一个空行,表示请求头部结束,接下来为请求体,这一 行非常重要,必不可少。
请求体:请求体是请求提交的参数,GET方法已经在URL中指明了参数,所以提交时没有数据。POST 方法提交的参数在请求体中

4.2、响应报文

状态行:状态行由协议版本,状态码,状态码描述三部分组成。
响应头: 响应头与请求头部类似,为响应报文添加了一些附加信息。常见响应头部 如表所示。

HTTP 响应头

响应头描述
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 语言进行讨论。

1、Nginx 服务基础

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

2.、编译安装Nginx

2.1、安装支持软件

#关闭防火墙
systemctl stop firewalld#禁用防火墙
systemctl disable firewalld#临时关闭内核保护机制
setenforce 0#永久关闭内核保护机制
vim /etc/sysconfig/selinux#在配置文件中修改参数为:
SELINUX=disabled

#提供编译安装的环境
dnf -y install gcc zlib-devel pcre-devel openssl-devel

2.2、创建程序用户

useradd -M -s /sbin/nologin nginx

2.3、编译安装 Nginx

#解压
tar zxf nginx-1.26.3_http_proxy.tar.gzcd nginx-1.26.3#配置
./configure --prefix=/usr/local/nginx \
--user=nginx \
--group=nginx  \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_stub_status_module \
--with-http_gzip_static_module \
--with-pcre \
--with-stream \
--add-module=./ngx_http_proxy_connect_module#编译
make#编译安装
make install#做软连接
ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin

3、Nginx 的运行控制

3.1、检查配置文件

nginx -t

3.2、Nginx的启、停

#开启
nginx#关闭
nginx -s stop#查看状态
netstat -anpt | grep nginx

3.3、添加 Nginx 系统服务

#切换目录
cd /lib/systemd/system#编辑服务文件
vim nginx.service#编写内容:
[Unit]
Description=cyauhiojpkl67tfyjop0k[ldrtuyfgiuvjnko
After=network.target[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStart=/usr/local/sbin/nginx
ExecStop=/usr/sbin/nginx -s stop
ExecReload=/usr/local/sbin/nginx -s reload[Install]
WantedBy=multi-user.targe

备注:
fork 其实本身就是一个进程。
当执行 Execstart 启动 nginx 进程的时候,fork 进程自身以 daemon 模式运行,将 nginx作为一个子进程,并启动起来这个 nginx 的子进程。然后 fork 父进程退出。并将 fork 出的 nginx 子进程作为服务主进程进行跟踪

4、修改配置文件

4.1、全局配置

vim /usr/local/nginx/conf/nginx.conf##运行用户
#user nobody;##工作进程数量
worker processes 1;##PID 文件的位置
#error log logs/error.log;##错误日志文件的位置
#pid logs/nginx.pid;

4.2、HTTP配置

4.3、访问状态统计:

systemctl restart nginx

相关文章:

企业网站架构部署与优化 --web技术与nginx网站环境部署

一、Web 基础 本节将介绍Web 基础知识,包括域名的概念、DNS 原理、静态网页和动态网页的 相关知识。 1、域名和DNS 1.1、域名的概念 网络是基于TCP/IP 协议进行通信和连接的&#xff0c;每一台主机都有一个唯一的标识(固定的IP 地址),用以区别在网络上成千上万个用户和计算机。…...

Scala与Spark:原理、实践与技术全景详解

Scala与Spark&#xff1a;原理、实践与技术全景详解 一、引言 在大数据与分布式计算领域&#xff0c;Apache Spark 已成为事实标准的计算引擎&#xff0c;而 Scala 作为其主要开发语言&#xff0c;也逐渐成为数据工程师和后端开发者的必备技能。本文将系统梳理 Scala 语言基础…...

【聚类】层次聚类

层次聚类 文章目录 层次聚类1. 算法介绍2. 公式及原理3. 伪代码 1. 算法介绍 背景与目标 层次聚类&#xff08;Hierarchical Clustering&#xff09;是一类无需事先指定簇数的聚类方法&#xff0c;通过构造一棵“树状图”&#xff08;dendrogram&#xff09;来呈现数据的多层次…...

Windows环境安装LibreOffice实现word转pdf

前言&#xff1a;最近在工作中遇到了一个需求要实现word转pdf&#xff0c;本来我在上一个公司使用aspose.words工具使用的得心应手&#xff0c;都已经把功能点实现了&#xff0c;两句代码轻轻松松&#xff0c;但是被告知不能用商业版的东西&#xff0c;公司要求只能用开源的&am…...

【FAQ】HarmonyOS SDK 闭源开放能力 —Vision Kit (3)

1.问题描述&#xff1a; 通过CardRecognition识别身份证拍照拿到的照片地址&#xff0c;使用该方法获取不到图片文件&#xff0c;请问如何解决&#xff1f; 解决方案&#xff1a; //卡证识别实现页&#xff0c;文件名为CardDemoPage&#xff0c;需被引入至入口页 import { …...

【聚类】K-means++

K-means 文章目录 K-means1. 算法介绍2. 公式及原理3. 伪代码 1. 算法介绍 背景与目标 k-means 是 David Arthur 和 Sergei Vassilvitskii 于2007年提出的改进 k-means 初始化方法&#xff0c;其核心目标是&#xff1a; 在保证聚类质量的前提下&#xff0c;通过更合理地选择初始…...

Java实现PDF加水印功能:技术解析与实践指南

Java实现PDF加水印功能&#xff1a;技术解析与实践指南 在当今数字化办公环境中&#xff0c;PDF文件因其跨平台兼容性和格式稳定性而被广泛应用。然而&#xff0c;为了保护文档的版权、标记文档状态&#xff08;如“草稿”“机密”等&#xff09;或增加文档的可追溯性&#xf…...

【C#】用 DevExpress 创建带“下拉子表”的参数表格视图

展示如何用 DevExpress 创建带“下拉子表”的参数表格视图。主表为 参数行 ParamRow&#xff0c;子表为 子项 ChildParam。 一、创建模型类 public class ParamRow {public string Pn { get; set; }public string DisplayName { get; set; }public string Value { get; set; }…...

Go语言八股文之Mysql优化

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 非常期待和您一起在这个小…...

学习记录:DAY29

项目开发日志&#xff1a;技术实践与成长之路 前言 回顾这几天的状态&#xff0c;热情总是比我想象中更快被消耗完。比起茫然徘徊的小丑&#xff0c;我更希望自己是对着风车冲锋的疯子。 今天继续深入项目的实际业务。 状态好点的时候&#xff0c;再看自己EMO时写的东西&…...

LLaMA-Factory:了解webUI参数

Finetuning method参数 full&#xff08;全量微调&#xff09; 更新模型全部参数&#xff0c;完全适配新任务 效果最好&#xff0c;但资源消耗最大适用于计算资源充足的场景存在过拟合的风险&#xff0c;需要大量数据支持 freeze&#xff08;冻结微调&#xff09; 固定底层参…...

【实战】GPT-SoVITS+内网穿透:3分钟搭建可公网访问的语音克隆系统

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

HTML向四周扩散背景

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>扩散背景效果</title><style>body {…...

React 个人笔记 Hooks编程

作用 配合函数式编程&#xff0c;保证在不产生类的时候完成一个整体的组件 常用组件 useStateuseContextuseReduceruseEffectuseMemouseCallback 前三个值为自变量 后三者为因变量 前三者相当于其他编程函数的变量声明&#xff0c;而后三者相当于对变量进行了(if now ! pr…...

CSS- 4.6 radiu、shadow、animation动画

本系列可作为前端学习系列的笔记&#xff0c;代码的运行环境是在HBuilder中&#xff0c;小编会将代码复制下来&#xff0c;大家复制下来就可以练习了&#xff0c;方便大家学习。 HTML系列文章 已经收录在前端专栏&#xff0c;有需要的宝宝们可以点击前端专栏查看&#xff01; 点…...

ngx_http_scgi_module 技术指南

一、快速上手示例 http {# 定义 SCGI 参数&#xff08;标准 CGI 环境变量&#xff09;include /etc/nginx/scgi_params;server {listen 80;location /app/ {# 将请求转发到本地 9000 端口的 SCGI 服务器scgi_pass localhost:9000;# 只转发非空的 HTTPS 参数scgi…...

NFT市场开发技术全解析:从架构设计到实现

NFT&#xff08;非同质化代币&#xff09;市场已成为区块链领域的热门应用场景&#xff0c;涵盖艺术品、游戏资产、虚拟地产等多个领域。本文将从技术栈选择、核心功能实现、开发流程、挑战与优化等方面&#xff0c;系统梳理NFT市场的开发要点&#xff0c;并结合实际案例与代码…...

第六十一篇 Java反射解析:用咖啡调配理解动态编程的艺术

引言&#xff1a;一杯咖啡引发的技术思考 在星巴克的收银台前&#xff0c;我们总能看到店员熟练地根据顾客需求调配不同口味的咖啡&#xff1a;美式、拿铁、卡布奇诺… 这让我联想到编程世界中的对象创建。如果每新增一种咖啡就要修改收银系统&#xff0c;这样的设计显然不够优…...

【android bluetooth 协议分析 01】【HCI 层介绍 7】【ReadLocalName命令介绍】

1. HCI_Read_Local_Name Read Local Name 是 HCI&#xff08;Host Controller Interface&#xff09;命令之一&#xff0c;属于 BR/EDR 控制器的 HCI Command 类别&#xff0c;其主要功能是 读取本地设备&#xff08;Controller&#xff09;的人类可读名称&#xff08;Local N…...

window xampp apache使用腾讯云ssl证书配置https

下载腾讯云ssl证书&#xff1a; 编辑Apache根目录下 conf/httpd.conf 文件&#xff1a; #LoadModule ssl_module modules/mod_ssl.so和#Include conf/extra/httpd-ssl.conf&#xff0c;去掉前面的#号注释。 编辑Apache根目录下 conf/httpd-ssl.conf 文件&#xff1a; <Vi…...

企业开发工具git的使用:从入门到高效团队协作

前言&#xff1a;本文介绍了Git的安装、本地仓库的创建与配置&#xff0c;以及工作区、暂存区和版本库的区分。详细讲解了版本回退、撤销修改等操作&#xff0c;并深入探讨了分支管理&#xff0c;包括分支的创建、切换、合并、删除及冲突解决。此外&#xff0c;还介绍了远程操作…...

【git config --global alias | Git分支操作效率提升实践指南】

git config --global alias | Git分支操作效率提升实践指南 背景与痛点分析 在现代软件开发团队中&#xff0c;Git分支管理是日常工作的重要组成部分。特别是在规范的开发流程中&#xff0c;我们经常会遇到类似 feature/user-management、bugfix/login-issue 或 per/cny/dev …...

VR 互动实训与展示,借科技开启沉浸式体验新篇​

对于企业而言&#xff0c;产品设计与展示是极为关键的环节&#xff0c;这直接关系到能否成功吸引客户&#xff0c;以及精准获取市场反馈。在当下科技飞速发展的时代&#xff0c;VR 互动实训为这一至关重要的环节注入了全新活力&#xff0c;带来了前所未有的体验。以某智能家居企…...

一文了解VR拍摄制作

虚拟现实&#xff08;VR&#xff09;技术通过计算机技术模拟环境&#xff0c;使用户能够身临其境地沉浸在虚拟世界中进行交互体验。 在VR拍摄中&#xff0c;主要利用这一技术来创建360度全景视频或图片&#xff0c;让观众能够全方位地感受拍摄场景。这种拍摄方式不仅改变了我们…...

【内测征集】LarkVR 播控系统上新:VR 应用一站式专业播控与管理工具

Paraverse平行云自主研发的LarkXR实时云渲染平台&#xff0c;作为行业领先的企业级云渲染解决方案&#xff0c;在国际市场占据重要地位。公司自2016年创立以来&#xff0c;始终引领3D/XR云化技术的创新发展&#xff0c;目前已在全球范围内为超过10,000名开发者和1,000家企业客户…...

Windows逆向工程提升之二进制分析工具:HEX查看与对比技术

公开视频 -> 链接点击跳转公开课程博客首页 -> ​​​链接点击跳转博客主页 目录 十六进制查看工具 应用于逆向工程的知识点 ​编辑 二进制对比工具 应用于逆向工程的知识点 十六进制查看工具 十六进制查看器是逆向工程的基础工具&#xff0c;它可以以十六进制格式…...

电脑A和电脑B都无法ping通电脑C网络,电脑C可以ping通电脑A和B,使用新系统测试正常,排除硬件问题。

主要硬件&#xff1a;研华AIMB-705主板、i5-6500 C机在防火墙高级设置里启用以下两项规则后&#xff0c;A/B机可正常访问C机网络。&#xff08;直接关闭防火墙也可解决此问题&#xff09; 文件和打印机共享 (回显请求 - ICMPv4-In) 核心网络诊断 - ICMP 回显请求 (ICMPv4-In)…...

【VMware】虚拟机运行 Linux Ubuntu、MAC 安装和配置

文章目录 一、VMware Workstation Pro 下载二、VMware Workstation Pro 安装三、Ubuntu Linux虚拟机镜像下载安装与配置 1、Ubuntu系统镜像下载 2、创建虚拟机&#xff08;VMware&#xff09;及硬件配置 3、编辑虚拟机设置 4、安装Ubuntu系统及系统…...

遨游科普:三防平板是什么?有什么作用?

在数字化与智能化浪潮席卷全球的今天&#xff0c;电子设备的可靠性已成为衡量其价值的核心标准之一。三防平板&#xff0c;这一“硬核”的工业设备&#xff0c;正凭借其卓越的环境适应能力&#xff0c;从专业领域走向大众视野&#xff0c;成为极端场景下不可或缺的数字化工具。…...

电脑闪屏可能的原因

1. 显示器 / 屏幕故障 屏幕排线接触不良&#xff1a;笔记本电脑屏幕排线&#xff08;屏线&#xff09;松动或磨损&#xff0c;导致信号传输不稳定&#xff0c;常见于频繁开合屏幕的设备。屏幕面板损坏&#xff1a;液晶屏内部灯管老化、背光模块故障或面板本身损坏&#xff0c;…...

VR 互动实训的显著优势​

&#xff08;一&#xff09;沉浸式学习&#xff0c;提升培训效果​ 在 VR 互动实训中&#xff0c;员工不再是被动的知识接受者&#xff0c;而是主动的参与者。以销售培训为例&#xff0c;员工戴上 VR 设备&#xff0c;就能置身于逼真的销售场景中&#xff0c;与虚拟客户进行面对…...

2025.05.19【Connectedscatter】连接散点图详解

How to add a legend to base R plot The legend() function allows to add a legend. See how to use it with a list of available customization. Image on the chart background The rasterImage function allows to add an image on the background of the chart. 文章目…...

C++之函数模板类模板

模板 1.泛型编程2. 函数模板函数模板概念函数模板的实例化模板参数的匹配原则 3.类模板类模板的定义格式类模板的实例化 4.模板的优缺点 C 模板是一种强大的泛型编程工具&#xff0c;它允许你编写与类型无关的代码&#xff0c;提高代码复用性。 1.泛型编程 先看一个我们之前经…...

《告别低效签约!智合同如何用AI重构商业“契约时代”》​​——解析智能合约技术的爆发与行业变革

在数字化浪潮奔涌的当下&#xff0c;合同作为商业活动的核心枢纽&#xff0c;正经历着智能化的深度变革。智合同-合同智能应用这一创新模式&#xff0c;犹如一颗璀璨的新星&#xff0c;在商业领域的天空中绽放出独特光芒&#xff0c;深刻改变着人们对合同管理与应用的认知和实践…...

Axure难点解决分享:垂直菜单展开与收回(4大核心问题与专家级解决方案)

亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢!如有帮助请订阅专栏! Axure产品经理精品视频课已登录CSDN可点击学习https://edu.csdn.net/course/detail/40420 课程主题:垂直菜单展开与收回 主要内容:超长菜单实现、展开与收回bug解释、Axure9版本限制等问题解…...

PCB设计教程【入门篇】——电路分析基础-基本元件(电阻电容电感)

前言 本教程基于B站Expert电子实验室的PCB设计教学的整理&#xff0c;为个人学习记录&#xff0c;旨在帮助PCB设计新手入门。所有内容仅作学习交流使用&#xff0c;无任何商业目的。若涉及侵权&#xff0c;请随时联系&#xff0c;将会立即处理 目录 前言 1.PCB原理图的作用…...

909. 蛇梯棋

https://leetcode.cn/problems/snakes-and-ladders/description/?envTypestudy-plan-v2&envIdtop-interview-150思路&#xff1a;题目要求我们使用最小的步数走到终点&#xff08;注意不能走回头路&#xff0c;传送不算&#xff09;&#xff0c;那我们的想法就很明确了&am…...

Redis学习打卡-Day4-Redis实现消息队列

Redis 基于阻塞队列实现秒杀的优化 新增秒杀优惠券的同时&#xff0c;将优惠券信息保存到 Redis 中。基于 Lua 脚本&#xff0c;判断秒杀库存、一人一单&#xff0c;决定用户是否抢购成功。如果抢购成功&#xff0c;将优惠券id和用户id封装后存入阻塞队列。开启独立线程任务&a…...

探索C++面向对象:从抽象到实体的元规则(上篇)

前引&#xff1a;在计算机科学的浩瀚星空中&#xff0c;面向对象编程&#xff08;OOP&#xff09; 无疑是照亮现代软件开发的核心范式。而 C 作为一门兼具高性能与抽象能力的系统级语言&#xff0c;其类与对象的语法设计更是开发者构建复杂系统的“元规则”。你是否曾困惑于 封…...

华为鸿蒙电脑发布,企业运营效率可以提高吗?

今日&#xff0c;科技圈迎来重磅消息&#xff0c;华为于19日在成都正式发布两款鸿蒙电脑&#xff0c;标志着鸿蒙操作系统首次登陆电脑端&#xff0c;这是中国国产操作系统的重大里程碑&#xff0c;更是中国电子信息产业自主可控进程中的关键一步。 鸿蒙操作系统作为首个统一移动…...

遨游科普:三防平板是什么?应用在什么场景?

在数字化转型的浪潮中&#xff0c;智能终端设备正从消费级市场向工业级场景深度渗透。传统平板电脑虽能满足日常需求&#xff0c;却难以应对极端环境下的挑战——暴雨、沙尘、震动、高温或低温等恶劣条件&#xff0c;往往成为数据采集、实时通讯和作业效率的“绊脚石”。在此背…...

图像中紫边出现原因

一、紫边 在实景调试中&#xff0c;我们经常会遇到高亮场景下的物体边缘分布有明显的紫边&#xff08;purple fringe&#xff09;现象, 就如下图所示&#xff1a; 对于紫边的成因&#xff0c;通常认为是镜头色差&#xff08;镜头对不同光谱光线的折射程度不同&#xff0c;导致不…...

中服云生产线自动化智能化调度生产系统:打造智能制造新标杆

前言 在当今制造业竞争日益激烈的背景下&#xff0c;实现生产线的自动化与智能化已成为企业提升竞争力的关键。作为国内技术领先的工业物联网平台、数字孪生、自动控制技术厂商&#xff0c;中服云凭借其深厚的技术积累和创新能力&#xff0c;打造了一套完整的生产线自动化智能…...

【电动汽车充电系统核心技术全解:从can通讯高压架构到800V超充未来】

标题&#xff1a;电动汽车充电系统核心技术全解&#xff1a;从高压架构到800V超充未来 目录 前言&#xff1a;开篇暴击&#xff1a;中国电动车年产670万辆背后&#xff0c;充电技术如何破局一、充电系统架构解剖&#xff1a;四大核心模块如何“打配合”&#xff1f;二、CAN总线…...

uniapp-商城-62-后台 商品列表(分类展示商品的布局)

每一个商品都有类别&#xff0c;比如水果&#xff0c;蔬菜&#xff0c;肉&#xff0c;粮油等等&#xff0c;另外每一个商品都有自己的属性&#xff0c;这些都在前面的章节进行了大量篇幅的介绍。这里我们终于完成了商品类的添加&#xff0c;商品的添加&#xff0c;现在到了该进…...

在嵌入式系统中, 一般链路层断开多久,断开TCP为好

一、典型场景与推荐策略 1. 实时性优先&#xff08;工业控制、自动化设备&#xff09; 需求&#xff1a;快速释放资源&#xff0c;避免因等待重传浪费内存或阻塞任务。 策略&#xff1a; 立即断开&#xff1a;在lwip_netif_link_callback中检测到链路断开后直接关闭TCP连接&a…...

解决 MySQL 错误 1356 (HY000)

当你遇到 ERROR 1356 (HY000): View mysql.user references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them 错误时&#xff0c;通常是由于 MariaDB 或 MySQL 版本更新导致的视图引用问题。 示例 UPDATE mysql.user SET H…...

【数据仓库面试题合集④】SQL 性能调优:面试高频场景 + 调优策略解析

随着业务数据规模的持续增长,SQL 查询的执行效率直接影响到数据平台的稳定性与数据产出效率。因此,在数据仓库类岗位的面试中,SQL 性能调优常被作为重点考察内容。 本篇将围绕常见 SQL 调优问题,结合实际经验,整理出高频面试题与答题参考,助你在面试中游刃有余。 🎯 高…...

机器学习第十七讲:PCA → 把100维数据压缩成3D视图仍保持主要特征

机器学习第十七讲&#xff1a;PCA → 把100维数据压缩成3D视图仍保持主要特征 资料取自《零基础学机器学习》。 查看总目录&#xff1a;学习大纲 关于DeepSeek本地部署指南可以看下我之前写的文章&#xff1a;DeepSeek R1本地与线上满血版部署&#xff1a;超详细手把手指南 主…...

一个由微软开源的 Python 工具,用于将多种文件格式转换为 Markdown 格式

&#x1f4da; Markitdown 由微软开源的 Python 工具&#xff0c;用于将多种文件格式转换为 Markdown 格式 支持&#xff1a;PDF、PowerPoint、Word、Excel、图像、音频、HTML、文本格式&#xff08;CSV、JSON、XML&#xff09;、ZIP 文件的转换。 它旨在提供一个简单且灵活的…...