linux_http协议
什么是http协议?
超文本传输协议
最流行www服务,是http协议的实现
ssh,nfs,rsync客户端(Client)和服务端(Server),C/S架构,局域网内部用,胖客户端
http协议www应用,浏览器(Brower)和服务器(Server),B/S架构,擅长广域网(互联网)应用
什么是www?
万维网,最受欢迎的信息服务形式,http协议www服务应用默认端口80,还有另外一个加密的www服务应用https,默认端口443,主要用于网银、支付等和钱相关的业务
http服务、www服务、web服务,都是当下常见的网站服务应用
http1.1 支持持久连接,在一个TCP连接上可以传送多个http请求和响应,减少建立和关闭连接消耗和时间延迟,增加更多的请求头和响应头信息
开发使用的浏览器: 谷歌 和 火狐
http有哪些请求方法?
get
post
生产场景常用的状态码?
200-ok 服务器成功返回页面,成功相应http请求,返回标准状态码
301 永久跳转,所有请求的网页将永久跳转到被设定的新的位置
403 禁止访问,服务器权限配置不当
404 请求页面不存在,服务器上没有该页面的资源
500 内部服务器出现文件,一般为服务器的设置或者内部程序问题所致
502 坏的网关,服务不可用或没有完成响应网关服务器,一般为反向代理服务下面节点出问题
http请求报文
请求头: 请求方式,协议版本号,请求资源,请求主机,请求文本格式,浏览器标识
http响应报文
响应头: 协议 状态码 响应时间 提供服务器信息 上一次更新时间 内容长度 文本类型
响应体: 返回的html文本内容
curl -l www.baidu.com # 获得响应头信息
http位于网络7层模型应用层
静态网页资源
a. 纯粹html格式网页,没有后台数据库,不含程序和可交互的网页
b. 特点: 更新麻烦,不能动态填充数据
1. 每个页面都有URL地址,URL没有? 和 & 符号
2. 页面固定不变,容易被搜索引擎收入(优点)
3. 程序在浏览器端解析,不需要读取后端数据库,因此性能和效率很高
4. 因为后端没有数据库支持,所以和用户的交互性比较差,功能实现差
静态网页架构思想:
在高并发、高访问量的场景下做架构优化,涉及的关键环节是把动态网页转成静态网页,而不是直接请求数据库和动态服务器,并且把静态内容推送到前端缓存中提供服务,这样就可以提升用户体验,节约服务器和维护成本
动态网页特点:
1. url含有 ? 和 & 符号,SEO不收录含这些符号的url,对搜索引擎不友好,通过伪静态技术,欺骗让搜索引擎收录
2. 网站后缀名都为对应的.php,各位web开发语言
3. 页面可以进行交互,依赖数据库,实现网页动态填充
动态网页架构思想:
静态网页性能效率是动态网页的10~30倍,且动态效率很低,并发能力也很低,在高并发场景中,应该尽量可能转换成静态网页,动态转静态几乎是所有高并发网站必备的架构方案实例,也是架构师的职责所在
对于更新频繁的网站设计不好就会产生数据不一致的情况
伪静态网页
通过rewrite技术,把动态的url地址转换为,让搜索引擎收录,提升用户访问体验,把动态网站转换为一朝一夕的事情,需要技术团队配合才能行
www服务软件有哪些?提供静态网站服务
- apache 中小型web服务主流,老大
- Nginx 大型web服务主流,其分支tengine也在发展
提供动态服务软件上有哪些?
- PHP 大中型网站,配合Nginx解析动态程序
- resin Java主流
版本选择,一年以前的版本,也就是稳定版本
http通信原理:
- http是osi模型中应用层协议,http协议重要应用是www服务
- http访问需要DNS解析原理
- http请求原理
- 用户请求网站服务器请求和返回流程
linux_http协议的更多相关文章
- HTTP协议系列(1)
一.为什么学习Http协议 首先明白我们为什么学习HTTP协议,也就是说明白HTTP协议的作用.HTTP协议是用于客户端与服务器之间的通讯.明白了HTTP协议的作用也就知道了为什么要学习H ...
- 重温Http协议--请求报文和响应报文
http协议是位于应用层的协议,我们在日常浏览网页比如在导航网站请求百度首页的时候,会先通过http协议把请求做一个类似于编码的工作,发送给百度的服务器,然后在百度服务器响应请求时把相应的内容再通过h ...
- 协议森林17 我和你的悄悄话 (SSL/TLS协议)
作者:Vamei 出处:http://www.cnblogs.com/vamei 转载请先与我联系. TLS名为传输层安全协议(Transport Layer Protocol),这个协议是一套加密的 ...
- 协议森林16 小美的桌号(DHCP协议)
作者:Vamei 出处:http://www.cnblogs.com/vamei 转载请先与我联系. DHCP协议用于动态的配置电脑的网络相关参数,如主机的IP地址,路由器出口地址.DNS域名服务器地 ...
- 简约之美Jodd-http--深入源码理解http协议
Jodd 是一个开源的 Java 工具集, 包含一些实用的工具类和小型框架.简单,却很强大! jodd-http是一个轻巧的HTTP客户端.现在我们以一个简单的示例从源码层看看是如何实现的? Http ...
- 【JavaScript】javascript中伪协议(javascript:)使用探讨
javascript:这个特殊的协议类型声明了URL的主体是任意的javascript代码,它由javascript的解释器运行. 比如下面这个死链接: <a href="javasc ...
- SNMP简单网络管理协议
声明:以下内容是学习谌玺老师视频整理出来(http://edu.51cto.com/course/course_id-861.html) SNMP(Simple Network Management ...
- 海鑫智圣:物联网漫谈之MQTT协议
什么是MQTT协议 MQTT(消息队列遥测传输协议)是IBM在1999年专门针对物联网等应用场景来制订的轻量级双向消息传输协议,它主要是为了解决物联网上使用到的设备的互相通信的问题,以及这些设备与后端 ...
- linux-图形化远程管理协议
远程管理控制方式: RDP(remote desktop protocol)协议: telnet: SSH(Secure Shell): RFB(Remote FrameBuffer)协议(图形化远程 ...
随机推荐
- Spark 学习笔记大纲
Spark 内核 第28课:Spark天堂之门解密 (点击进入博客)从 SparkContext 创建3大核心对象开始到注册给 Master 这个过程中的源码鉴赏 第29课:Master HA彻底解密 ...
- [树莓派(raspberry pi)] 02、PI3安装openCV开发环境做图像识别(详细版)
前言 上一篇我们讲了在linux环境下给树莓派安装系统及入门各种资料 ,今天我们更进一步,尝试在PI3上安装openCV开发环境. 博主在做的过程中主要参考一个国外小哥的文章(见最后链接1),不过其教 ...
- 使用Tomcat的Reload提高开发速度(翻译)
欢迎转载http://www.cnblogs.com/coodream2009,有翻译的不太准确的地方请大家指出,我继续修改完善. 按照Java Servlet规范第四部分推荐的,Tomcat系统的实 ...
- ssh框架实现员工部门增删改查源码
http://pan.baidu.com/s/1qYLspDM 备注:IDE是eclipse,前端使用bootstrap,数据库是mysql
- nodejs 做后台的一个完整业务整理
大家知道js现在不仅仅可以写前端界面而且可以写后端的业务了,这样js就可以写一个全栈的项目.这里介绍一个nodejs + express + mongodb + bootstap 的全栈项目. 1.安 ...
- promise间隔时间添加dom
<!DOCTYPE html> <html> <head> <title></title> </head> <body&g ...
- js对象,set和get方法 的三种实现形式
var obj1 = { name: 'shaanxi', get nameGet() { return this.name + 'a'; }, set nameSet(name) { this.na ...
- 把玩爬虫框架Gecco
如果你现在接到一个任务,获取某某行业下的分类. 作为一个非该领域专家,没有深厚的运营经验功底,要提供一套摆的上台面且让人信服的行业分类,恐怕不那么简单. 找不到专家没有关系,我们可以爬虫.把那些专家的 ...
- deeplearning.ai 改善深层神经网络 week3 超参数调试、Batch正则化和程序框架 听课笔记
这一周的主体是调参. 1. 超参数:No. 1最重要,No. 2其次,No. 3其次次. No. 1学习率α:最重要的参数.在log取值空间随机采样.例如取值范围是[0.001, 1],r = -4* ...
- AIM Tech Round 4 (Div. 2)(A,暴力,B,组合数,C,STL+排序)
A. Diversity time limit per test:1 second memory limit per test:256 megabytes input:standard input o ...