Linux -- 进阶 Web 服务器 基础前瞻 ( 一 )

news/2024/9/17 19:08:02/

目录

WWW  简介 :

组件一个网站得需要哪些东西呢 ??

1 得有 响应用户申请网页服务 的软件

2  服务器主机 

3  那就需要数据了 

4. 浏览器 

预备知识 :

网址及HTTP 简介 : 

URL :

http 请求方法 : 

状态代码 :  

HTTP 报文  :

MIME  ( 了解 即可 )


WWW  简介

 Web网络服务 即 WWW (World Wide Web  全球信息广播),也称万维网服务~!!

一般是指能够让用户通过浏览器访问到互联网中文文档等资源的服务 ; 说白就是,我们平时所称

的上网 ~!! ( 即 使用 www  来查询用户所需要的信息 ) 

( 主要是 通过浏览器输入 URL地址 或 输入域名 来访问对方服务器上网页资源的一种服务) 

  这是一种被动的访问服务( 就是说,只需要把自己的机子准备好,相关的网页上传好,服务器搭

 建好,配置好。然后就等对方来访问就行~!!)

组件一个网站得需要哪些东西呢 ??

1 得有 响应用户申请网页服务 的软件

    就是别人输了一个网址,发给你之后,那你得有一个软件来被动的监听它,当用户传过来之后,

    我要把我的网页再传给用户,即是说,得有一个响应用户申请网页的软件。

    这个软件呢也叫作  Web服务程序 。

    常用的 Web服务程序 有 :

    IIS  (  适用于 Windows )

     NGINX   

     Apache  ( 用于Web 静态网站多一点 ) 

     tomcat  

服务器主机 

    你总得把 网站部署到 机子上呀--就是服务器 

    那这机子在哪呢??  

    这服务器主机 其实,也就是我们俗称的 机房。

    对于 网站来说,那 服务器的作用就是 存放网页源代码并将网页内容展示给用户~!!

    

    服务器呢主要分两种 :

    一种叫 :  塔式服务器  ( 适用于 小型业务 )

    一种叫 :  刀片式服务器 ( 大型商务作业 )

     那怎么就得到这个服务器呢?

     最简单的那就是你直接买一个服务器( 当然了,很贵的,你买不起 )

     最常用的就是 上云,用云服务器 ( 去买 云服务器,例如 阿里云  )

那就需要数据了 

    就是你网站里的内容,那当然了,一个网站里肯定得有内容啊,不然,打开网站里面啥都没有

    那成啥了???

    所以,我们搭建网站还需要的元素就是 数据了。

    服务器所提供的最主要数据就是 超文本标记语言(即 HTML ) 多媒体文件(图片、影像、声

    音、文字等,都属于多媒体或超媒体 )  

    HTML 只是一些纯文本数据,通过所谓的标记来规范所要显示的数据格式 ~!!

4. 浏览器 

    好的浏览器能快速解析并浏览相关内容~!!

    客户端收到浏览器的数据之后需要软件解析服务器所提供的数据,

    最后将效果呈现在用户的屏幕上。 

    

预备知识

      

网址及HTTP 简介 : 

Web 服务器提供的这些数据大部分都是文件,那么我们需要在服务器端先写将数据文件写好,并

且放置在某个特殊的目录下面,这个目录就是我们整个网站的首页。

在 redhat 中,这个目录默认在 /var/www/html  。

浏览器是通过你在地址栏中输入你所需要的网址来取得这个目录的数据的~!!

URL :

 官方 统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是

             互联网上标准资源的地址。  

             为了更加具体形象,那截张图 就会明白这个 URL 是啥了 

             ===>>>

             

             这就是 URL  

网址格式 :   < 协议 > : // < 主机或主机名 > [ : port ] /<目录资源,路径>** 

协议 :    http 超文本传输协议,运行在应用层)、

                      *  所有 WWW 文件都必须遵循这个标准, 现在流行 http 的版本就是 2.0版本。

                   

                      *  它是建立在 TCP 上的一种无状态连接。

                       ( 无状态连接就是 这次连接和上次连接没有必然的联系)

                       

                     *   整个基本的工作流程是客户端发送一个  HTTP 请求,说明客户端想要访问资源和

                         请求动作, 服务端收到请求之后,服务端开始处理请求,并根据请求做出响应的

                         动作访问服务器资源,最后通过发送 HTTP 响应把结果返回给客户端。 

                         其中一个请求的开始到一个响应的结束称为事务~!!

                         当一个事务结束后还会在服务端添加一条日志条目。 

               

           https 加密传输的超文本传输协议)  ==> http + ssL 

                ftp上传下载协议  ) 

主机地址或者主机名 : 主机地址就是服务器在因特网所在的IP地址。 如果是主机名的话,那么就

                                      需要域名解析了~!!

端口号 : http --- 80           https ---- 443     ftp --- 20 / 21 

               *  0-1023  :  永久地分配给固定的应用程序使用 

               *  1024-41951 : 注册端口,但要求不是特别严格,分配给程序注册为某应用使用 

               *   41950-60000 : 客户端程序随即使用的端口,动态端口,或私有端口 。 

http 请求方法 : 

     在 http 通信中,每个http 请求报文都包含一个方法,用以告诉Web 服务器端需要执行哪些具

    体的动作,这些动作包括 : 获取指定 web 页面,提交内容到服务器,删除服务器上资源文件等

      ( 就是 告诉 Web服务器 需要做什么样的事情 )   

     

那都有哪些方法呢 ??

      ===>>>

方法描述
GET          请求指定的页面信息,并返回实体主体
HEAD类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
POST向指定资源提交数据进行处理请求(例如 : 提交表单或者上传文件 ) 数据被包含在请求体中,POST请求可能会导致新的资源的建立 或 已有资源的修改
PUT从客户端向服务端传送的数据代指定的文档的内容
DELETE请求服务器删除指定的页面
CONNECTHTTP/1.1协议中预留给能将连接改为管道方式的代理服务器
OPTIONS允许客户端查看服务器的性能
TRACE回显服务器收到的请求,主要用于测试或诊断 
PATCH                是对 PUT 方法的补充,用来对已知资源进行局部更新

                     GET  和 POST 的区别 ???? 

                     ===>>>

                      1. 表现形式上 

                          GET 是通过 URL ,而 URL 是直接在地址栏,是暴露出来的~!

                          POST 是通过 请求体, 是不容易看见的; 相对较为安全 。  

                      2. 功能上 

                          GET 是用来获取服务器上的某些资源,它只是获取某些资源,因此,GET 它

                          不会对 服务器上的内容 进行修改 。

                          POST  它是提交的方式,所以, POST存在对服务器上的内容有修改的可能。 

                      3. 长度上 

                          当发送数据时,GET 方法是向 URL  添加数据的,而 URL 的长度是受限制的,

                          URL 的最大长度是 2048 个字符。

                          而 POST 方法发送数据是不向 URL  发送的,它是把数据放在一个叫 请求体里的

                          因此,导致 POST 的长度是无限制的~!!!

状态代码 :  

       官方 : 由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值 

                    1xx : 指示信息 -- 表示请求已接收,继续处理 

                    2xx : 成功 -- 表示请求已被成功接受,理解。

                    3xx :  重定向 -- 要完成请求必须进行更进一步的操作 

                    4xx : 客户端错误 -- 请求有语法错误或请求无法实现 

                    5xx : 服务器端错误 -- 服务器端未能实现合法的请求 

    

      常见状态码 : 

              *  200 OK : 客户端请求成功 

              * 400 Bad Request :  客户端请求有语法错误,不能被服务器所理解 

              * 401 Unauthorized : 请求未经授权,这个状态代码必须和 WWW-Authenticate 报头域一

                                                  起使用 。 

              * 403 Forbidden :  服务器收到请求,但是拒绝提供服务 

              * 404 Not Found : 请求资源不存在,举例 : 输入了错误的 URL 

              * 500 Internal Server Error : 服务器发生不可预期的错误 

              * 503 Server Unavailable :  服务器当前不能处理客户端的请求,一段时间后可能恢复正常

HTTP 报文  :

官方 : http 报文中有很多行内容,这些行的文字端内容都是一些 ASCLL 码串组成,但各个字段

            的长度是不同的 ~! 

分类如下 : 

              请求报文 : 从 Web 客户端发往 web 服务器的 http 报文,由请求行,请求头部,空行和

                                 请求报文主体几个部分组成 。 

                                 

 

                          

               响应报文 : 从 Web服务器发往 Web客户端的报文,由起始行、响应头部,空行和响应

                                   报文主体这几个部分组成 。 

                                   

                                

 

   总结 格式 如下 :                       

 

                                   

 

MIME 了解 即可

官方 :  多用途因特网邮件扩展~! 

              最初是为了解决在不同的电子邮件系统之间搬移报文时存在的问题。后来 http 也支持了

              这个功能,用它来描述数据并标记不同的数据内容类型 ~!!

注意 : 

       *   Web服务器响应 http 请求时,会为每一个 http 对象数据加一个 MIME 类型; 当 Web浏览

            器获取到服务器返回的对象时,会去查看相关的 MIME 类型,并进行相应处理 。 

      *   MIME 类型存在于 HTTP 响应报文的响应头部信息里,它是一种文本标记,表示一种主要的

          对象类型和一个特定的子类型 ~!! 

     


http://www.ppmy.cn/news/44880.html

相关文章

SpringCloud微服务技术栈.黑马跟学(十二)

SpringCloud微服务技术栈.黑马跟学 十二 今日目标服务异步通信-高级篇1.消息可靠性1.1.生产者消息确认1.1.1.修改配置1.1.2.定义Return回调1.1.3.定义ConfirmCallback 1.2.消息持久化1.2.1.交换机持久化1.2.2.队列持久化1.2.3.消息持久化 1.3.消费者消息确认1.3.1.演示none模式…

Go 构建基础的事件调度器

&#x1f447;我在这儿 当我们需要在一段时间后的特定时间或间隔运行任务时&#xff0c;我们需要使用任务调度系统来运行任务&#xff1a;例如发送电子邮件、推送通知、午夜关闭账户、清空表格等。 在本文中&#xff0c;我们将构建一个基本的事件调度程序&#xff0c;使用数据…

LiangGaRy的学习分享

LiangGaRy的学习分享 从小白开始&#xff0c;学习计算机技术&#xff1b;也算是一个比较大的跨越了&#xff0c;专业不对口&#xff1b;本来就没有基础&#xff1b;然后一直摸爬滚打来学习&#xff1b;有好多的心得与体会&#xff1b; 回顾当年上大学的时候&#xff0c;天天玩…

LC-1041 困于环中的机器人(模拟,快慢指针找环)

1041. 困于环中的机器人 难度中等148 在无限的平面上&#xff0c;机器人最初位于 (0, 0) 处&#xff0c;面朝北方。注意: 北方向 是y轴的正方向。南方向 是y轴的负方向。东方向 是x轴的正方向。西方向 是x轴的负方向。 机器人可以接受下列三条指令之一&#xff1a; "…

Codepipeline 跨账号访问 Codecommit

背景 大型企业中代码仓库通常存放在各部门开发账户中&#xff0c;而流水线则位于独立 DevOps 账户中。 本文我们将介绍如何创建跨账号访问 Codecommit 代码仓库的 Codepipeline 流水线&#xff0c;即 CodePipeline 调用另一个账号中的 Codecommit 代码仓库。 亚马逊云科技开发…

【嵌入式烧录/刷写文件】-5.1-详解map格式文件

目录 1 Map文件格式 1.1 TARGET SECTION字段 1.2 FILE SECTION字段 1.3 STARTUP SECTION字段 1.4 SECTION-ALLOCATION SECTION字段 1.5 VECTOR-ALLOCATION SECTION字段 1.6 OBJECT-ALLOCATION SECTION字段 1.7 MODULE STATISTIC字段 1.8 SECTION USE IN OBJECT-ALLOCA…

Nginx配置ssl证书实现https安全访问

目录 一、Nginx的安装与配置 安装步骤 二、SSL证书获取 三、Nginx配置 前题条件&#xff0c;拥有服务器与可以解析到该服务器的自己的域名。 一、Nginx的安装与配置 若已安装好了Nginx&#xff0c;则需查看自己的Nginx是否开启了SSL的模块功能&#xff1a; ./nginx -V 显…

C++类型转换运算符

类型转换运算符是一种特殊的函数&#xff0c;它可以将一个类类型的对象转换为另一种类型的值&#xff0c;或将一个对象引用或指针转换为另一种类型的对象引用或指针。这样一来&#xff0c;我们就可以在某些场合下方便地将一个对象转换为另一种形式。 在 C 中&#xff0c;类型转…

【好刊推荐】知名出版社影响因子7+被踢出SCI,投稿前如何选期刊?

今年3月Hindawi旗下的19本期刊被SCIE剔除&#xff0c;其中有一本影响因子7&#xff0c;以下从期刊各个指标方面分析一下具体原因&#xff1a; 期刊剔除&#xff1a;影响因子7 期刊简介 期刊名称&#xff1a; OXIDATIVE MEDICINE AND CELLULAR LONGEVITY ISSN / eISSN&#…

Grounding DINO-开集目标检测论文解读

文章目录摘要背景算法3.1Feature Extraction and Enhancer3.2. Language-Guided Query Selection3.3. Cross-Modality Decoder3.4. Sub-Sentence Level Text Feature3.5. Loss Function实验4.2 Zero-Shot Transfer of Grounding DINOCOCO数据集LVIS数据集ODinW&#xff0c;开放…

C技能树:Hello World

Hello World 输出 "Hello, World!" 字符串&#xff0c;请选出错误答案。 小知识&#xff1a;Hello World究竟从何而来? Hello, World最早是由 Brian Kernighan 创建的。1978年&#xff0c;Brian Kernighan写了一本名叫《C程序设计语言》的编程书&#xff0c;在程…

一、深入了解容器底层技术

一、容器技术概述 容器技术是一种操作系统级别的虚拟化技术&#xff0c;它可以在同一台物理机上运行多个容器&#xff0c;每个容器都有自己的文件系统、网络、进程和环境变量等&#xff0c;而且它们之间是隔离的&#xff0c;互相之间不会影响。容器技术的出现极大地简化了应用…

GO变量的使用

Go变量的使用注意事项 &#xff08;1&#xff09;第一种&#xff1a;指定了变量类型&#xff0c;但是声明后若不赋值&#xff0c;则使用默认值 &#xff08;2&#xff09;第二种&#xff1a;根据值自行判断我们的变量类型**&#xff08;类型推导&#xff09;** var num10.00 …

【MySQL学习】认识MySQL数据库

目录一、什么是数据库二、主流数据库三、MySQL数据库的基本使用3.1 MySQL的安装3.2 MySQL服务器管理3.3 连接MySQL服务器3.4 MySQL服务器&#xff0c;数据库与表之间的关系3.5 使用案例3.6 数据存储四、MySQL架构五、SQL分类六、存储引擎6.1 定义6.2 查看存储引擎6.3 存储引擎对…

TCP的连接管理机制(三次握手与四次挥手)

目录为啥要三次握手与四次挥手三次握手syn 与 ack三次握手具体流程四次挥手注意为啥要三次握手与四次挥手 相比于UDP, TCP是有连接的, 这个连接就体现在这了. 三次握手就是TCP建立连接, 四次挥手就是TCP断开连接. 三次握手 握手是指通信双方进行网络交互. 三次握手就相当于…

Linux工具——yum和vim

目录 &#x1f34f;Linux软件包管理器-yum&#x1f34e;yum简介&#x1f34e;rzsz工具&#x1f34e;注意事项&#x1f34e;软件包查看&#x1f34e;如何安装和卸载软件 &#x1f34f;Linux编辑器-vim&#x1f34e;vim的基本概念&#x1f34e;vim的基本操作&#x1f34e;vim正常…

少儿编程 电子学会图形化编程等级考试Scratch三级真题解析(选择题)2022年12月

2022年12月Scratch等级考试一级真题解析 选择题(共25题,每题2分,共50分) 1、默认小猫角色和气球角色都是显示状态,小猫程序如下图所示,气球没有程序,点击绿旗,舞台上最终显示的效果是 A、可能出现6个不同位置的小猫和6个小球 B、可能出现6个不同位置的小猫和1个气球…

Spring Boot AOP @Pointcut拦截注解的表达式与运算符

项目场景&#xff1a; 这里主要说下Spring Boot AOP中Pointcut拦截类上面的注解与方法上面的注解&#xff0c;怎么写表达式怎么&#xff0c;还有Pointcut中使用运算符。 PointCut 表达式 拦截注解的表达式有3种&#xff1a;annotation、within、target 1、annotation 匹配有…

NFS能使使用者访问网络上别处的文件就像在使用自己的计算机一样

先关闭selinux跟防火墙 安装NFS yum install nfs-utils -y 配置共享目录 mkdir /webdata 赋权 chmod 755 /webdata 修改配置文件 vim /etc/exports 换顺序启动 systemctl start rpc-bind systemct start nfs 测试 showmount -e 客户端挂载 创建共享目录 mkdir /we…

ASEMI代理ADI亚德诺AD8061ARTZ-REEL7车规级芯片

编辑-Z AD8061ARTZ-REEL7芯片参数&#xff1a; 型号&#xff1a;AD8061ARTZ-REEL7 −3dB小信号带宽&#xff1a;320MHz −3dB大信号带宽&#xff1a;280MHz 0.1 dB平坦度的带宽&#xff1a;30MHz 斜率&#xff1a;650V/μs 总谐波失真&#xff1a;-77dBc 输入电压噪声&…