Web服务器基础介绍

这篇具有很好参考价值的文章主要介绍了Web服务器基础介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

Web服务器基础介绍

一、HTML是什么?

二、静态网页和动态网页

1、静态网页

2、动态网页

3、动态网页语言

PHP

JSP

Python

Ruby

三、HTTP协议

1、HTTP协议是什么?

2、HTTP请求访问的方法

3、GET与POST比较

GET:

POST:

4、HTTP状态码

5、HTTP请求访问的完整过程

6、请求报文

7、响应报文


Web服务器基础介绍

一、HTML是什么?

超文本标记语言,编程语言,主要负责实现页面的结构;HTML叫:超文本标记语言,是一种规范,也是一种标准,通过标记符号来标记要显示的网页中的各个部分。网页本身是一种文本文件,通过在文本文件中添加标记符号,可以告诉浏览器如何显示其中的内容。

HTML文件可以使用任何能够生成txt文件的文本编辑器来编辑,生成超文本标记语言文件,只用修改文件名后缀为html或者htm即可

二、静态网页和动态网页

1、静态网页

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

2、动态网页

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

3、动态网页语言

早期的动态网页

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

PHP


即 Hypertext Preprocessor(超文本预处理器),它是当今 Internet 上最为火热的脚本语言,其语法借鉴了 C、Java、PERL 等语言,但只需要很少的编程知识你就能使用 PHP 建立一个真正交互的 Web 站点。

JSP


即 Java Server Pages(Java 服务器页面),它是由 Sun Microsystem 公司于 1999 年 6 月推出的新技术,是基于 Java Servlet 以及整个 Java 体系的 Web 开发技术。

Python


是一种面向对象、跨平台的动态类计算机程序设计语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的大型项目开发。

Ruby


是一种简单快捷的面向对象(面向对象程序设计)脚本语言,在 20 世纪 90年代由日本人松本行弘(Yukihiro Matsumoto) 开发,遵守GPL 协议和Ruby License。它的灵感与特性来自于 Perl、Smalltalk、Eiffel、Ada 以及 Lisp 语言。

三、HTTP协议

1、HTTP协议是什么?

HTTP协议采用了请求/响应模型。客户端向服务器发送一个请求,请求头包含请求的方法、URL、协议版本、以及包含请求修饰符、客户信息和内容的类似于MIME的消息结构。

服务器以一个状态行作为响应,响应的内容包括消息协议的版本,成功或者错误编码加上服务器信息、实体元信息以及可能的实体内容。

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

HTTP/0.9:已过时。只接受 GET 一种请求方法,没有在通讯中指定版本号,且不支持请求头。由于该版本不支持 POST 方法,所以客户端无法向服务器传递太多信息。
HTTP/1.0:这是第一个在通讯中指定版本号的 HTTP 协议版本,至今仍被广泛采用,特别是在代理服务器中。
HTTP/1.1:引入了持久连接,即TCP连接默认不关闭,可以被多个请求复用,能很好地配合代理服务器工作。还支持管道方式机制,即在同一个TCP连接里面,客户端可以同时发送多个请求,以便降低线路负载,提高传输速度。
HTTP/2.0:完全多路复用,在一个连接里,客户端和浏览器都可以同时发送多个请求或回应,而且不用按照顺序一一对应。引入了头信息压缩机制,使用gzip或compress压缩后再发送。支持服务端推送,允许服务器未经请求,主动向客户端发送资源。

2、HTTP请求访问的方法

HTTP支持几种不同的请求命令,这些命令都被称为HTTP方法

每条HTTP请求报文都包含一个方法,告诉服务器要执行什么动作,包括:获取一个页面,运行一个网关程序,删除一个文件等。

最常用的方法是GET、POST、PUT。

①GET           对服务器资源获取的简单请求

②PUT           向服务器提交数据,以修改数据

③DELETE    删除服务器上的某些资源

④POST        用于发送包含用户提交数据的请求

⑤HEAD        请求页面的首部,获取资源的元信息

GET请求会向数据库发索取数据的请求,从而来获取信息,该请求不会产生副作用。无论进行多少次操作,结果都是一样的

PUT请求是向服务器端发送数据的,从而改变信息,无论进行多少次PUT操作,其结果并没有不同,与GET不同

DELETE请求顾名思义,就是用来删除某一个资源的。

3、GET与POST比较

GET:

①从指定的服务器上获取数据

②请求可以被缓存

③请求会被保存在浏览器的浏览记录里

④请求有长度的限制

⑤主要用于获取数据

⑥查询的字符串不会显示在url后缀中,不安全

POST:

①提交数据给指定服务器处理

②请求不能被缓存

③请求不会保存在浏览器的浏览记录里

④请求没有长度限制

⑤查询的字符串不会显示url中比较安全

4、HTTP状态码

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

状态码首位 已定义范围 分类
1xx 100-101     信息提示
2xx 200-206     成功
3xx 300-305     重定向
4xx 400-415 客户端错误
5xx 500-505 服务器错误

http常见状态码:

状态码    功能描述
200    一切正常
301    永久重定向,将缓存记录在浏览器中
302    临时重定向,没有缓存,每次都要重定向
401    用户名或密码错误
403    禁止访问(客户端IP地址被拒绝)
404    请求的文件不存在
414    请求URL头部过长
500    服务器内部错误
502    无效网关
503    当前服务不可用
504    网关请求超时

5、HTTP请求访问的完整过程

1.建立连接

2.接收请求

3.处理请求

4.访问资源

5.构建响应报文

6.发送响应报文

7.记录日志

6、请求报文

①请求行:请求行由请求方法,url以及协议版本三部分组成。

②请求头:请求头为请求报文添加了一些附加信息,由名\值对组成,每行一对,名和值之间使用冒号分隔

③空行:请求头部的最后会有一个空行,表示请求头部结束,接下来为请求体,这一行非常重要,必不可少。

④请求体:请求体是请求提交的参数,get方法已经在url中指明了参数,所以提交时没有数据。post方法提交的参数在请求体中。

常用的请求头:

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

7、响应报文

①状态行:状态行由协议版本,状态码,状态码描述三部分组成。

②响应头:响应头与请求头部类似,为响应报文添加了一些附加信息。

③空行:响应头部的最后会有一个空行,表示响应头部结束。

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

常见相映头:文章来源地址https://www.toymoban.com/news/detail-836496.html

响应头 描述
Server 服务器应用程序软件的名称和版本
Content-Type 响应正文的类型(是图片还是二进制字符串)
Content-Length  响应正文长度
Content-Charset 响应正文使用的编码
Content-Encoding 响应正文使用的数据压缩格式
Content-Language  响应正文使用的语言

到了这里,关于Web服务器基础介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【100天精通python】Day47:python网络编程_Web开发:web服务器,前端基础以及静态服务器

    目录 1  网络编程与web编程 1.1 网络编程 1.2 web编程  1.3 前后端交互的基本原理/

    2024年02月11日
    浏览(51)
  • linux 服务器搭建web网站防御秘籍之雷池WAF包含入门介绍-安装-使用-升级更新

    我们在安装了Linux服务器并使用了宝塔面板后发现,宝塔的WAF需要升级版本才能使用。尽管市面上有很多免费的开源WAF解决方案,但我们对它们的学习成本感到有些高,而且对于我们这个刚开始建站的小型项目来说,也不想花费一千多块钱来购买商业WAF每年的许可费。 因此,

    2024年02月03日
    浏览(47)
  • 第二节:基础入门-Web 应用&架构搭建&漏洞&HTTP 数据包&代理服务器

    基础入门-Web 应用架构搭建漏洞HTTP 数据包代理服务器 #网站搭建前置知识 域名,子域名,DNS,HTTP/HTTPS,证书等 购买一台服务器,填完信息之后,会有两个内外网地址,这两个地址就是内部地址和公网地址 得到公网地址后可以用xshell或远程桌面管理连接这台服务器,这里我们

    2024年02月19日
    浏览(41)
  • Centos7 -DHCP、WEB、DNS以及邮件服务器配置-最终基础篇

    一、使用虚拟机建立一个公司局域网,局域网内包括DHCP服务器、web服务器、DNS服务器以及邮件服务器。局域网网段为192.168.学号后三位.0/24,局域网所在域的域名为姓名拼音.com 例如:张三同学学号是188,则网段为192.168.188.0/24,域名为zs.com或zhangsan.com。 二、实现新终端入网零

    2024年02月16日
    浏览(65)
  • 运维——ssh无法登录云服务器

    一般来讲,无法登录ssh的原因挺多,如果无法登录云服务器,则除了要检查ssh端口是否放行,防火墙状态外,还需要检查云服务器web控制台入站规则是否开放了对应端口。如果你前面检查都是正常,那么还需要注意云服务器运营商。某些奇葩的运营商,例如TY云,限定了80,

    2024年02月01日
    浏览(63)
  • 架构师核心-云计算&云上实战(云计算基础、云服务器ECS、云设施实战、云上高并发Web架构)

    阿里云 云计算岗位一般的要求是: 1、常见操作系统的使用与Linux命令行、Shell脚本 2、云计算基础:包括虚拟化技术、云存储、云安全等。 3、网络: 包括NAT、TCP/IP 4、Docker云原生K8S 5、开发环境搭建与部署 6、微服务、DevOps与云原生监控 7、故障排除、日志分析、变更管理 1.

    2024年04月23日
    浏览(52)
  • Qt+QtWebApp开发笔记(一):QtWebApp介绍、下载和搭建基础封装http轻量级服务器Demo

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/130631547 红胖子网络科技博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中… 上一篇:没有了 下一篇:《Qt+Q

    2024年02月05日
    浏览(61)
  • 运维 | 查看 Linux 服务器 IP 地址

    大多数在操作 Linux 系统时,我们经常需要知道服务器的 IP 比便于后续的一系列操作,这时候有快速查看主机 IP 的命令行操作,能够有效的帮助我们 本章节主要记录一些常用查看服务器 IP 的命令,希望对大家有所帮助。 查看 Linux 服务器的 IP 地址的命令大体上有以下几种。

    2024年04月27日
    浏览(76)
  • 运维:mysql常用的服务器状态命令

    目录 1、查询当前服务器运行的进程 2、查询最大链接数 3、查询当前链接数 4、展示当前正在执行的sql语句 5、查询当前MySQL当中记录的慢查询条数 6、展示Mysql服务器从启动到现在持续运行的时间 7、查询数据库存储占用情况 8、查询服务器启动以来的执行查询的总次数 9、查询

    2024年02月08日
    浏览(49)
  • 运维记录 会产生无用日志的服务器

    创建linux定时任务 crontab -e cron表达式 文件名.sh 查看linux定时任务 crontab -l 确认创建完成后重启cron service crond restart

    2024年04月11日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包