Register

  • 点击获取
  •   

已有账号直接登录    

公告:

热门文章 HTTP协议原理结构分析

时间:2016-8-15 作者:RainFly   分类: Linux嵌入式   热度: 5039°  评论:1  
时间:2016-8-15   分类: Linux嵌入式    热度:5039   评论:1

1.协议特点 

 a.C/S模式

 b.客户端向服务器发出Request 只需传送请求方法和路径, 通信速度快

方法: GET 通过请求URI得到资源 浏览器向服务器一般请求 POST,用于添加新的内容 发送form表单 PUT 用于修改某个内容 DELETE, 删除某个内容 CONNECT, 用于代理进行传输,如使用SSL OPTIONS 询问可以执行哪些方法 PATCH, 部分文档更改 PROPFIND 查看属性 PROPPATCH 设置属性 MKCOL 创建集合(文件夹) COPY 拷贝 MOVE 移动 LOCK 加锁 UNLOCK 解锁 TRACE 用于远程诊断服务器 HEAD 类似于GET, 但是不返回body信息,用于检查对象是否存在,以及得到对象的元数据

c. 传输类型很灵活:只需要给它加上Content-Type  MIME类型值即可

d.发送完请求报文,立即和服务器断开连接(PS:虽然TCP的80端口可以建立多个Socket连接但是如果连接过多服务器响应其他请求放慢),服务器所需要完成的是将端口接受请求放入等待队列,根据算法进行选择相应的连接请求进行处理。 节省了客户端进行等待的时间

e.发送完数据包之后,如果服务器不Response,需要将所有的数据包重新发送。

 2.文件格式

                 Request: 请求报文格式

                

            请求报文可以用Google浏览器进行查看其发送 

发送的报文实例

POST报文头如下: POST /sn/index.php HTTP/1.1 Accept: */* Accept-Language: zh-cn host: localhost Content-Type: application/x-www-form-urlencoded Content-Length: 12 Connection:close sn=123&n=asa 在http头后边有一空行,空行后边接着发送post数据,长度通过Content-Length: 12 指出,此post数据中包含两项 sn=123 n=asa 其中:Content-Type: application/x-www-form-urlencoded 指定POST数据的编码类型 Content-Length: 12 POST数据的长度

GET: GET报问头如下: GET /sn/index.php?sn=123&n=asa HTTP/1.1 Accept: */* Accept-Language: zh-cn host: localhost Content-Type: application/x-www-form-urlencoded Content-Length: 12 Connection:close

 

                   Response :响应报文格式

                

相应阶段报文,给一个API 调试工具 使用GET请求获得数据 http://apistore.baidu.com/astore/toolshttpproxy

我给http:www.baidu.com服务器发送了一个GET请求下面是相应回复的报文 

Response Header HTTP/1.1 200 OK Date: Tue, 16 Aug 2016 01:58:22 GMT Content-Type: text/html; charset=utf-8 Transfer-Encoding: chunked Connection: Keep-Alive Vary: Accept-Encoding Set-Cookie: BAIDUID=E6BADB45ADCAFAF36BAE6C63E46613C9:FG=1; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com Set-Cookie: BIDUPSID=E6BADB45ADCAFAF36BAE6C63E46613C9; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com Set-Cookie: PSTM=1471312702; expires=Thu, 31-Dec-37 23:55:55 GMT; max-age=2147483647; path=/; domain=.baidu.com Set-Cookie: BDSVRTM=0; path=/ Set-Cookie: BD_HOME=0; path=/ Set-Cookie: H_PS_PSSID=1465_18241_17949_18560_17001_11693_20848_20856_20837_20771_20719; path=/; domain=.baidu.com P3P: CP=" OTI DSP COR IVA OUR IND COM " Cache-Control: private Cxy_all: baidu+955142e509dca9cdda759e1be73fb859 Expires: Tue, 16 Aug 2016 01:57:59 GMT X-Powered-By: HPHP Server: BWS/1.1 X-UA-Compatible: IE=Edge,chrome=1 BDPAGETYPE: 1 BDQID: 0xc83e2bbf001302cc BDUSERID: 0 Content-Encoding: gzip

 这里可以看到对应上面图二的结果

版本信息:HTTP/1.1   

HTTP 1.1中的五类状态码:  

100-199 用于指定客户端应相应的某些动作。   

200-299 用于表示请求成功。   

300-399  用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。   

400-499 用于指出客户端的错误。  

 500-599 用于支持服务器错误。 

OK:就是OK

剩余的都是头部行,携带了一些关于发送时间 格式 编码之类的信息

Content-Encoding: gzip  此处是指服务器将Response文件进行GZIP压缩, 当客户端接收后根据Content-Encoding: gzip执行解压缩 (这种方法会降低服务器宽带压力,但是增加了服务器压力,加快网页打开速度)

对文件部分解码的到了Response Body, 就是HTML信息。

在HTTP协议是建立在TCP/IP传输控制协议基础上的,所以所有的文件必须是客户端和服务器TCP三次握手已经建立连接,后面我还会继续了解剖学习 , 还会用C语言实现 HTTP FTP等应用层协议!

热门文章 Linux局域网工具wpa_supplicant 与 wireless tools 区别

时间:2016-8-2 作者:RainFly   分类: Linux嵌入式   热度: 8611°  评论:2  
时间:2016-8-2   分类: Linux嵌入式    热度:8611   评论:2

    前段时间已经给imx283移植过RTL8192EU的无线网卡,使用了wireless tool工具 http://www.rainfly.cn/?post=185

这个命令行工具很强大基本满足很多种wlan硬件驱动,可惜不能连接上那些只支持WPA和AP的信号上面,(当然2.4G的这种路由器已经灭绝了)。

关于wireless tool的编译及用法,在上一个帖子已经说得很清楚了,今天主要研究一下 wap_supplicant工具

一、编译wpa_supplicant http://hostap.epitest.fi/wpa_supplicant/  下载wpa_supplication http://www.openssl.org/source/   下载openssl 1.把补丁拷贝到openssl cp wpa_supplicant-0.7.3/patches/openssl-0.9.8i-tls-extensions.patch openssl-1.0.1c/ 2.修改openssl Makefile

CC= arm-none-linux-gnueabi-gcc AR= arm-none-linux-gnueabi-ar $(ARFLAGS) r RANLIB= arm-none-linux-gnueabi-ranlib

3.make  && make install 4.进入wpa_supplicant目录

#cp defconfig .config #vim .config CC= arm-linux-gcc -L/usr/local/ssl/lib/ CFLAGS += -I/usr/local/ssl/include/ LIBS += -L/usr/local/ssl/lib/ #make

编译后将产生的wpa_supplicant和wpa_cli拷贝到开发板根文件系统的sbin目录下(/sbin);没有sbin目录就放在bin下面,查看tab键能否补齐工具,基本安装完成。 二.wpa_supplicant用法:

在根文件系统/etc(此路径为开发板路径)下添加wpa_supplicant配置文件wpa_supplicant.conf 

其中wpa_supplicant.config 可参考内容如下:

ctrl_interface=/var/run/wpa_supplicant ap_scan=1 network= { proto=RSN key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP ssid="IDEASK" #连接的ap psk="12345678" #wifi密码 }

wpa_supplicant -D wext -c ./wpa_supplicant.conf -i wlan0 -B

热门文章 轻松升级Windows 10正式版操作系统

时间:2015-7-30 作者:RainFly   分类: 计算机知识   热度: 9354°  评论:4  
时间:2015-7-30   分类: 计算机知识    热度:9354   评论:4

       2015年7月29号中午微软发布了正式版的Windows10,笔者当天晚就讲自己盗版的win7升级了  ps:虽然是盗版的但是升级之后依然保留正式版的权限,微软其实很机智,正版使用者提供了他们足够的资金,而盗版使用者却提供了庞大的市场和发展前景.....

                

热门文章 TP-LINK路由器硬改DD-WRT

时间:2015-7-19 作者:RainFly   分类: 计算机知识   热度: 13338°  评论:5  
时间:2015-7-19   分类: 计算机知识    热度:13338   评论:5

       DD-WRT是个不错的软件,功能强大,可设置项很多,并且是免费的,对于厌倦了路由器自带的那些简单设置的朋友是个不错的选择,同时DD-WRT可以让路由器增加一些原本不具备的额外功能,例如桥接等......

      

热门文章 PhotoshopCS5中文破解版+视频教程+课件素材分享

热门文章 轻松注册全球通用的Gravatar头像

时间:2015-5-4 作者:RainFly   分类: 计算机知识   热度: 7434°  评论:5  
时间:2015-5-4   分类: 计算机知识    热度:7434   评论:5

          最近QQ邮箱也可也用来注册gravatar头像了,只是不翻墙一般来说无法访问Gravatar头像注册网站,至于翻墙方法前面已经介绍了两个免费的翻墙点,一个国内(http://www.rainfly.cn/?post=6)一个日本的(http://www.rainfly.cn/?post=87)亲测都可以使用,在此介绍一个在网上看到的一个可以注册Gravatar头像的教程!

百度浏览器从6.5版本推出海外加速,可以访问Google等已经无法正常访问的网站了!!!!(当然速度....就不多说了)所以用6.5测试一下,是否支持,答案很明显!

第一步:

 安装百度浏览器6.5标准版 下载地址 :http://liulanqi.baidu.com/download.html

第二步:

打开百度浏览器,点击选项-高级选项-开启海外加速通道,(已经打开就无需该步骤了)

第三步:

在地址栏目输入G头像申请地址: http://en.gravatar.com/,打开此链接。

第四步:

开始注册G头像,以下按照图片步骤即可!(建议使用QQ邮箱注册!!!)

需要的赶紧试试吧,如果觉得有用点击一下广告,支持一下!

热门文章 Win7Win8兼容版VC6.0

时间:2015-4-29 作者:RainFly   分类: 软件分享   热度: 13877°  评论:0  
时间:2015-4-29   分类: 软件分享    热度:13877   评论:0

      很多c语言初学者在选择编译器上面使用Visual C++ 6.0科学这个版本年代久远,从而是win7,win8产生不兼容现象,在此为大家分享一个可以使用的安装包。

热门文章 支付宝一键转账付款代码分享

时间:2015-4-29 作者:RainFly   分类: Web程序设计   热度: 21304°  评论:5  
时间:2015-4-29   分类: Web程序设计    热度:21304   评论:5

                 很多网站都采用了一键转账功能,可是支付宝把个人收款主页关闭了,导致很多新站长不懂如何去做一键转账的链接,在这里雨夜轩为大家分享一下一键转账功能的实现,可以直接填写好收款人金额备注,废话不多说直接上代码吧!

  

<form action="https://shenghuo.alipay.com/send/payment/fill.htm" method="POST" target="_blank" accept-charset="GBK"> <input name="optEmail" type="hidden" value="支付宝邮箱" /> <input name="payAmount" type="hidden" value="金额" /> <input id="title" name="title" type="hidden" value="付款说明" /> <input name="memo" type="hidden" value="备注" /> <input name="pay" type="image" value="转账" src="图片链接地址" /> </form>

图片链接地址 (可以下载修改到自己网站上)

  https://img.alipay.com/sys/personalprod/style/mc/btn-index.png

  http://file.arefly.com/alipay.png

如有疑问下方留言,该代码由雨夜轩分享:转载请注明出处,

亲,花费您几秒钟点击一百度联盟广告支持一下,谢谢啦!

热门文章 "rel=nofollow"属性--SEO基础

时间:2015-4-25 作者:RainFly   分类: Web程序设计   热度: 9464°  评论:6  
时间:2015-4-25   分类: Web程序设计    热度:9464   评论:6

          

nofollow是HTML元标签(meta)的content属性和链接标签(a)的rel属性的一个值,告诉机器(爬虫)无需追踪目标页,为了对抗blogspam(博客垃圾留言信息),所以希望友链上面请别添加,Google推荐使用nofollow,告诉搜索引擎爬虫无需抓取目标页,同时告诉搜索引擎无需将的当前页的Pagerank传递到目标页。但是如果你是通过sitemap直接提交该页面,爬虫还是会爬取,这里的nofollow只是当前页对目标页的一种态度,并不代表其他页对目标页的态度。

nofollow的使用

nofollow有两种用法:

1.用于meta元标签:<meta name="robots" content="nofollow" />,告诉爬虫该页面上所有链接都无需追踪。 2.用于a标签:<a href="login.aspx" rel="nofollow">登录</a>,告诉爬虫该页面无需追踪。

nofollow的作用 nofollow主要有三个作用: 1.防止不可信的内容,最常见的是博客上的垃圾留言与评论中为了获取外链的垃圾链接,为了防止页面指向一些拉圾页面和站点。 2.付费链接:为了防止付费链接影响Google的搜索结果排名,Google建议使用nofollow属性。 3.引导爬虫抓取有效的页面:避免爬虫抓取一些无意义的页面,影响爬虫抓取的效率。

PR修剪(Pagerank Sculpting) nofollow的滥用,一些SEO为了做到搜索引擎的最大优化,通过nofollow来控制PR的流动,可以很好的优化一些特定页面。当然这种优化比较适合一些已经积淀了相当数量PR的老站点。为了防止PR修剪和nofollow的滥用,Google已经减弱了nofollow的作用,以前的nofollow不仅仅不会造成PR流动,同时不会造成PR损失,现在的nofollow规定虽然也不会造成PR流向目标页,但是原本流向的目标页的将会损失掉。比方当前页PR为1,而且页面上有10个链接,其中一个是nofollow的链接,根据先前的nofollow的规定,每个非nofollow链接指向的目标页将获得1/9的PR,含nofollow的链接不能获得PR,而根据现在Google对nofollow的新规定,非nofollow链接指向的目标页只能获得1/10,nofollow链接同样不能获得PR,也就是损失了1/10的PR。

SEO建议

      nofollow在Google的作用已经很弱,所以SEO要控制站点的PR的流动,避免链接指向垃圾页面,只能靠人工审核的方法。

友情链接是否带nofllow检测工具  :http://link.chinaz.com

推荐给大家一款可以修改站内所以外链属性的emlog插件,友链记得标记不添加nofllow!

百度网盘:

热门文章 数据库原理及运用(吉林大学48课时)

热门文章 数字电路 清华大学 27讲

时间:2015-4-6 作者:RainFly   分类: 模电数电   热度: 5348°  评论:0  
时间:2015-4-6   分类: 模电数电    热度:5348   评论:0

      用数字信号完成对数字量进行算术运算和逻辑运算的电路称为数字电路,或数字系统。由于它具有逻辑运算和逻辑处理功能,所以又称数字逻辑电路。现代的数字电路由半导体工艺制成的若干数字集成器件构造而成。逻辑门是数字逻辑电路的基本单元。存储器是用来存储二进制数据的数字电路。从整体上看,数字电路可以分为组合逻辑电路和时序逻辑电路两大类。

百度网盘:数字电路 清华大学 27讲   大小:27课时

返回顶部    首页    捐赠支持    手气不错    友情链接    关于我们    站长工具    站长介绍    手机版本    后台登陆   
版权所有:雨夜轩    站长:RainFly    特别鸣谢   文章归档   皖ICP备15003600号-1   百度统计
Copyright©2015雨夜轩 Powered by emlog强力驱动 七牛CDN全球加速 360站长联盟安全认证 中国博客联盟荣誉成员 可信赖网站 谷歌地图   百度地图   
页面加载耗时:0.06秒 数据库查询次数:62次
背景设置
$