HTTP知识普及系列:与HTTP协作的Web服务器

  1. HTTP/1.1规范允许一台HTTP服务器搭建多个Web站点。
  2. 相同IP地址下,由于虚拟主机可以寄存多个不同主机名和域名的Web网站,因此在发送HTTP请求时,必须在Host首部内完整指定主机或域名的URL
  3. HTTP通信时,除客户端和服务器以外,还有一些用于通信数据转发的应用程序,例如代理、网关和隧道。
    1. 代理是一种转发功能的应用程序,它扮演了位于服务端和客户端“中间人”的角色。
    2. 网关是转发其他服务器通信数据的服务器。
    3. 隧道是在相隔甚远的客户端和服务器两者之间进行中转,并保持双方通信连接的应用程序。
  4. 使用代理服务器的理由:
    1. 利用缓存技术减少网络带宽的流量
    2. 组织内部针对特定网站的访问控制
    3. 以获取访问日志为主要目的
  5. 代理使用方法的两种基准分类:是否使用缓存;是否会修改报文。
  6. 缓存代理:代理转发响应时,缓存代理会预先将资源的副本保存在代理服务器上。
  7. 透明代理:不对报文做任何加工的代理。
  8. 网关能使通信线路上的服务器提供非HTTP协议服务。网关能提高通信的安全性,因为可以在客户端与网关之间的通信线路上加密以确保连接的安全。
  9. 隧道可按要求建立起一条与其他服务器通信线路,使用SSL等加密手段进行通信。隧道的目的是确保客户端能与服务器进行安全的通信。
  10. 缓存是指代理服务器活客户端本地磁盘内保存的资源副本。利用缓存可以减少源服务器的访问,因此也就节省了通信流量和通信时间。
时间: 2024-10-12 02:24:03

HTTP知识普及系列:与HTTP协作的Web服务器的相关文章

[C# 网络编程系列]专题三:自定义Web服务器

转自:http://www.cnblogs.com/zhili/archive/2012/08/23/2652460.html 前言: 经过前面的专题中对网络层协议和HTTP协议的简单介绍相信大家对网络中的协议有了大致的了解的, 本专题将针对HTTP协议定义一个Web服务器,我们平常浏览网页通过在浏览器中输入一个网址就可以看到我们想要的网页,这个过程中浏览器只是一个客户端,浏览器(应用层应用程序)通过HTTP协议把用户请求发送到服务端, 服务器接受到发送来的HTTP请求,然后对请求进行处理和响应

CGI原理解析系列之一----CGI如何获取WEB服务器数据

//gcc get_post.c -o get_post.ums; #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <string.h> int main(int argc,char *argv[]) { size_t i = 0,n = 0; printf("Content-Type:text/plain\n\n"); char * method =

第五章 与HTTP协作的Web服务器

第五章  与HTTP协作的Web服务器 一台Web服务器可搭建多个独立域名的Web网站,也可以作为通信路径上的中转服务器提升传输效率. 1.用单台虚拟机实现多个域名 HTTP/1.1规范允许一台HTTP服务器搭建多个Web站点.即使物理层面只有一台服务器,但只要使用虚拟主机,则可以假想已具有多台服务器.在相同IP地址下,由于虚拟主机可以寄存多个不同主机和域名的Web网站,因此发送HTTP请求时,必须在Host首部内完整指定主机名或域名的URI. 2.通信数据转发程序:代理.网关.隧道 HTTP除

HTTP知识普及系列:确保Web安全的HTTPS

HTTP的缺点 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,因此有可能遭遇伪装 任何人都可发起请求 查明对手证书 无法证明报文的完整性,所以有可能已遭篡改 接收到的内容可能有误 用MD5和SHA-1等散列值校验的放阿飞,以及用来确认文件的数字签名方法 HTTPS是指HTTP与SSL组合使用. HTTP+加密+认证+完整性保护=HTTPS HTTPS并非是应用层的一种新协议,知识HTTP通信接口部分用SSL和TLS协议代替而已. SSL是当今世界上应用最广泛的网络安全技术. SS

HTTP知识普及系列:HTTP报文内的HTTP信息

HTTP报文是用于HTTP协议交互的信息. 请求报文和响应报文的结构: 请求行 状态行 首部字段 通用首部 请求首部 响应首部 实体首部 其他 常用内容编码的几种方式 gzip(GNU zip) compress (UNIX系统的标准压缩) deflate (zlib) identity (不进行编码) 把实体主体分块的功能成为分块传输编码,每一块都会用十六进制来标记块的大小,实体主体的最后一块会使用“0(CR+LF)” 获取部分内容的范围请求,要实现该功能需要指定下载的实体范围.如果服务器无法

HTTP知识普及系列:简单的HTTP协议

请求报文是由请求方法.请求URI.协议版本.可选的请求首部字段和内容实体构成的. 响应报文基本上由协议版本.状态码.用以解释状态码的原因短语.可选的相应首部字段以及实体主体构成. HTTP是一种不保存状态,即无状态协议. 告知服务器意图的HTTP方法 GET方法用来请求访问已被URI识别的资源: POST方法用来传输实体的主体: PUT方法用来传输文件: HEAD方法和GET方法一样,只是不返回报文主体部分: DELETE方法用来删除文件: OPTIONS方法用来查询针对请求URI指定的资源支持

HTTP知识普及系列:Web及网络基础

根据web浏览器地址栏中指定的URL,Web浏览器从Web服务器端获取文件资源等信息,从而显示出Web页面. Web使用一种名为HTTP(超文本传输协议)的协议作为规范,完成从客户端到服务器端等一系列运作流程.而协议是指规则的约定. WWW(world wide web)万维网. 3项WWW构建技术: 把SGML(标准通用标记语言)作为页面的文本标记语言的HTML: 作为文档传递协议的HTTP: 指定文档所在地址的URL. 目前主流的HTTP协议版本是1997年1月公布的HTTP/1.1. TC

HTTP知识普及系列:HTTP返回状态码

状态码 1XX 信息性状态码 接受的请求正在处理 2XX 成功状态码 请求正常处理完毕 3XX 重定向状态码 需要进行附加操作以完成请求 4XX 客户端错误状态码 服务器无法处理请求 5XX 服务器端错误状态码 服务器处理请求出错 2XX 相应结果表明请求被正常处理了 200 OK 表示从客户端发来的请求在服务器端被正常处理了: 204 No Content 该状态码代表服务器接收的请求已成功处理,但在返回的响应报文中不含实体的主体部分.也不允许返回任何实体的主体. 206 Partial Co

HTTP知识普及系列:Web攻击技术

HTTP协议本身并不存在安全性问题,应用HTTP协议的服务器和客户端以及运行在服务器上的Web应用等资源才是攻击的目标. Web网站使几乎都用会话管理.加密处理等安全性方面的功能.而HTTP协议本身不具备这些功能. 在HTTP请求报文内加载攻击代码能对Web应用发起攻击. 针对Web的攻击模式 主动攻击是指攻击者通过直接访问应用,把攻击代码传入的攻击模式. 被动攻击是指利用全套策略执行攻击代码的攻击模式. 实施Web应用的安全策略可大致分为以下两部分. 客户端验证 Web应用端(服务器端)验证