计算机网络

蜘蛛(搜索引擎程序,Spider)

蜘蛛不是网站本身的因素,它是第三方制造的产品,用来在自己的数据库里添加、更新互联网上网站数据的一个机器人程序,可是spider发展到现 在已经成为互联网信息来源的主导,一个网站的流量离不开spider,设计一个符合spider口味的网站是相当可观的,我们把这种符合spider口味的设计叫做SEO(搜索引擎优化,Search Engine Optimization),SEO的主要工作是研究、猜测、试验、证实spider的爬行规律和关键词排名规律,然后根据这些规则优化网站,使网站指定关键词的排名。

1、浏览器端第一次发送请求到服务器端

2、服务器端创建Cookie,该Cookie中包含用户的信息,然后将该Cookie发送到浏览器端

3、浏览器端再次访问服务器端时会携带服务器端创建的Cookie

4、服务器端通过Cookie中携带的数据区分不同的用户

Session

1、浏览器端第一次发送请求到服务器端,服务器端创建一个Session,同时会创建一个特殊的Cookie(name为JSESSIONID的固定值,value为session对象的ID),然后将该Cookie发送至浏览器端

2、浏览器端发送第N(N>1)次请求到服务器端,浏览器端访问服务器端时就会携带该name为JSESSIONID的Cookie对象

3、服务器端根据name为JSESSIONID的Cookie的value(sessionId),去查询Session对象,从而区分不同用户。
name为JSESSIONID的Cookie不存在(关闭或更换浏览器),返回 1 中重新去创建Session与特殊的Cookie
name为JSESSIONID的Cookie存在,根据value中的SessionId去寻找session对象
value为SessionId不存在**(Session对象默认存活30分钟)**,返回 1 中重新去创建Session与特殊的Cookie
value为SessionId存在,返回session对象

Http & Https

HTTP(HyperText Transfer Protocol:超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。 简单来说就是一种发布和接收 HTML 页面的方法,被用于在 Web 浏览器和网站服务器之间传递信息

HTTP 默认工作在 TCP 协议 80 端口,用户访问网站 http:// 打头的都是标准 HTTP 服务

HTTP 协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息

HTTPS(Hypertext Transfer Protocol Secure:超文本传输安全协议)是一种透过计算机网络进行安全通信的传输协议 HTTPS 经由 HTTP 进行通信,但利用 SSL/TLS 来加密数据包
HTTPS 开发的主要目的,是提供对网站服务器的身份认证,保护交换数据的隐私与完整性

Ajax

Ajax即Asynchronous Javascript And XML(异步JavaScript和XML)在 2005年被Jesse James Garrett提出的新术语,用来描述一种使用现有技术集合的‘新’方法,包括: HTML 或 XHTML, CSS, JavaScript, DOM, XML, XSLT, 以及最重要的XMLHttpRequest
使用Ajax技术网页应用能够快速地将增量更新呈现在用户界面上,而不需要重载(刷新)整个页面,这使得程序能够更快地回应用户的操作

加密

对称加密

用户和服务器端使用相同的密钥,数据容易被截取破解

非对称加密

服务器端使用公钥加密,用户端使用私钥解密
但存在服务器端发送数据过程中公钥被篡改的问题

证书加密

在服务器传输过程中加入中间安全证书机构,对服务器端的公钥进行签名,并发放安全证书
由于签名是对公钥本身进行 hash ,所以篡改的公钥对不上签名后的 hash 值,解决了非对称加密中的公钥篡改问题
因此证书加密是当前最普遍的加密方式

参考文献:
      ~~~~~~百度百科 网站三要素
      ~~~~~~秋风不识路 ~Cookie和Session的区别(面试必备)
      ~~~~~~菜鸟教程 HTTP 与 HTTPS 的区别