1、cookie是怎样被设置到浏览器的。

HTTP响应首部字段。

2、浏览器登录后自动跳转有哪些实现方式

  • 使用meta标签:

<meta http-equiv="refresh" content="1;url=http://www.gxblk.com">

  • 使用header函数:

比如登录页面,通过判断用户提交的数据是 否合法来决定页面跳转到何处。

eg:header("Location:index.php");

  • 使用JavaScript:

eg: window.location.href("http://www.gxblk.com");

3、1-9填到九宫格横竖对角线想加都相等,说思路。

设第一行 的和为X;第二行的和为X;第三行的和为X。

3X=1+2+3+..+9=45你等于是把这九个数都加了一遍。

可知:X=15.

先设置九宫格分别填入的数是:A、B、C、D、E、F、G、H、I 九个数取值范围[1,9],如图:

A     B    C

D     E     F

G     H      I

那么,横竖斜等于15,转化成数学表达式就是:

A+B+C=15、D+E+F=15、G+H+I=15、A+D+G=15、B+E+H=15、C+F+I=15、A+E+I=15、C+E+G=15     ………………………............................(算式组①) 

将算式组①中的等式左右分别相加,合并同类项,提取公因式之后:

3(A+C+G+I)+2(B+D+H+F)+4E=120

设:A+C+G+I=X 、 B+D+H+F=Y

其中:X=A+C+G+I=(A+I)+(C+G)=15-E+15-E=30-2E

 同理:Y=B+D+H+F=30-2E

即:3(30-2E)+2(30-2E)+4E=120

所以:E=5

再确定最中心的数是5。

与最大的数9相加等于15的数有2组:【1,5】和【2,4】,所以最大的数9只能在边格。

同理,与最小的数1相加等于15的也有2组:【5,9】和【6,8】,最小的数1也只能在边格。

遵上两点,1、5、9必定在中间一行(或列)上,2、4填在与9相邻的两个角格。

每行、每列和两条对角线知道和值和两个数,依次求出第三个数即可。

即:

6 1 8
7 5 3
2 9 4

4、HTTP1.0,HTTP1.1和HTTP2.0协议的区别:

HTTP1.0:HTTP1.0是一种无状态、无连接的协议。浏览器的每次请求都需要与服务器建立一个TCP连接,服务器处理完后立即断开TCP连接(无连接),服务器不跟踪每个客户端也不记录过去的请求(无状态)。也就是默认使用Connection: close

HTTP1.1:HTTP1.1默认使用Connection:keep-alive,避免了连接建立和释放的开销。但服务器必须按照客户端请求的先后顺序依次回送相应的结果,要保证客户端能够区分出每次请求的相应内容。通过Content-Length字段来判断当前请求的数据是否已经全部回收。不允许同时存在两个并行的响应。

HTTP2.0:HTTP2.0协议新增了二进制分帧,多路复用,头部压缩和服务器推送功能,进一步提高了传输效率。

5、HTTP协议的状态码

200(成功)
404(未找到):服务器找不到请求的网页。
500(服务器内部错误):有bug导致程序嗝屁了。
401(未授权):请求要求身份验证。
403(禁止):服务器拒绝请求(比如死循环了,一直访问) 
302(重定向):请求重定向到指定网页;
502(错误网关):服务器从上游接收到了无效响应;
504(网关超时):ngnix请求超时,请求一直没有返回。

6、HTTP请求中的Get和Post方法的区别

Get方法一般是用来从服务器上查询获取资源,Post方法一般是用来更新服务器上的资源;

Get方法直接将参数拼接到了url后边,明文显示,可以通过浏览器地址栏直接访问;

Post方法用于表单提交,数据不是明文的,安全性更高;

Get请求有长度限制,Post请求则没有。