RHCE(SSH,HTTP)

1.免密登录:
1.我们要使用免密登录,则需要使用RSA非对称加密算法来创建一对钥匙,即公钥和私钥
[root@localhost ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:[root@localhost ~]# ls ./.ssh/ authorized_keys id_rsa id_rsa.pub known_hosts
SHA256:8vvhVMFr1nPngJkod+CoCBfDxD2aCcO1duiXW9dZE6Y root@localhost.localdomain
The key’s randomart image is:
±–[RSA 2048]----+
| . oo. o |
| +o.oo . o . |
| oB+… . E o |
| o++ . o + X . |
| . o + S = % + o|
| o o * + = =.|
| . o . o .|
| + . |
| …o |
±—[SHA256]-----+
[root@localhost ~]# ls ./.ssh/
authorized_keys id_rsa id_rsa.pub known_hosts

id_rsa 私钥
id_rsa.pub 公钥

2.将pub copy到另一个主机上,不需要指定文件,需要指定到copy到哪台机器上
在这里插入图片描述
切换到另一台机器上查看
在这里插入图片描述
3.用ssh完成免密连接
[root@localhost ~]# ssh root@192.168.2.161 //成功免密登录
Last login: Tue Mar 24 17:03:27 2020 from 192.168.2.161

3:http中GET和POST的区别:
(1)功能上:
GET是用来获取服务器上的资源,不会对服务器上的资源进行改动,POST是提交的方式,会对服务器上的资源进行一些改动
(2)长度上:
GET请求数据,,会放在URL里,URL会对长度有限制,长度限制为2048字符;POST请求数据不放在URL里面,而是放在请求体里面,请求体无限大,所以长度无限制
POST的安全性比GET安全性高
(3)表现形式上:
GET能被缓存,POST不能被缓存
4.HTTP状态码以及常用的状态码:
当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含 HTTP 状态码的信息头(server header)用以响应浏览器的请求。
–1xx:指示信息 —— 表示请求已接收,继续处理
–2xx:成功 —— 表示请求已被成功接收、理解、接受
–3xx:重定向 —— 要完成请求必须进行更进一步的操作
–4xx:客户端错误 —— 请求有语法错误或请求无法实现
–5xx:服务器端错误 —— 服务器未能实现合法的请求
–常见状态代码、状态描述的说明如下:
•200 OK:客户端请求成功
•400 Bad Request:客户端请求有语法错误,不能被服务器所理解
•401 Unauthorized:请求未经授权,这个状态代码必须和 WWW-Authenticate 报头域一起使用
•403 Forbidden:服务器收到请求,但是拒绝提供服务
•404 Not Found:请求资源不存在,举个例子:输入了错误的URL
•500 Internal Server Error:服务器发生不可预期的错误
503 Server Unavailable:服务器当前不能处理客户端的
5.HTTP请求报文和响应报文:
一个HTTP请求报文由请求行(request line)、请求头部(header)、空行和请求数据4个部分组成
在这里插入图片描述

(1)请求头:
请求行由请求方法字段、URL字段和HTTP协议版本字段3个字段组成,它们用空格分隔
(3)空行:
最后一个请求头之后是一个空行,发送回车符和换行符,通知服务器以下不再有请求头。
(4)请求数据:
请求数据不在GET方法中使用,而是在POST方法中使用。POST方法适用于需要客户填写表单的场合。与请求数据相关的最常使用的请求头是Content-Type和Content-Length。

HTTP响应报文由四部分组成,分别是:状态行、消息报头、空行,响应正文。
在这里插入图片描述

在响应中唯一真正的区别在于第一行中用状态信息代替了请求信息。状态行(status line)通过提供一个状态码来说明所请求的资源情况
状态行格式如下:
HTTP-Version Status-Code Reason-Phrase CRLF
其中,HTTP-Version表示服务器HTTP协议的版本;Status-Code表示服务器发回的响应状态代码;Reason-Phrase表示状态代码的文本描述。状态代码由三位数字组成,第一个数字定义了响应的类别,且有五种可能取值。
1xx:指示信息–表示请求已接收,继续处理。
2xx:成功–表示请求已被成功接收、理解、接受。
3xx:重定向–要完成请求必须进行更进一步的操作。
4xx:客户端错误–请求有语法错误或请求无法实现。
5xx:服务器端错误–服务器未能实现合法的请求。

6.HTTP是如何保持连接状态的:
HTTP有四种保持连接状态的方法,网址重写(URL rewriting)、隐藏域、cookie及HttpSession对象
网址重写
网址重写是一种Session追踪技术,需要将一个或多个token作为一个查询字符串添加到一个URL中
token格式为url?key-1=value-1&key-2=value-2
网址重写只适用于那些既需要保持,却又不跨越太多页面,并且又不太重要的信息。
任何相对的URL(没有协议部分的URL)都会被当作是相对于当前页面的URL。
举例:分页中的下一页
如第二页的url为:xxx?pageNum=2&pageSize=10
隐藏域
将值放在HTML表单的隐藏域中。当用户提交表单时,隐藏域中的值也传送到服务器。只有当页面包含表单,或者可以在页面中添加表单时,才适合使用隐藏域。这种技术胜过网址重写技术的地方在于,可以将更多的字符传到服务器,并且不需要进行字符编码。但是像网址重写一样,也只有当要传递的信息不需要跨越多个页面时,才适合使用这种技术。
cookie
cookie是自动地在Web服务器和浏览器之间来回传递的一小块信息。cookie适用于那些需要跨越许多页面的信息,cookie是作为HTTP标头嵌入的。
cookie的不足之处在于,用户可以通过修改浏览器设置来拒绝接受cookie。
要使用cookie,必须熟悉javax.servlet.http.Cookie类,以及HttpServletRequest和HttpServletResponse接口中的几个方法
当浏览器再次发出对同一个资源或者对同一台服务器中的不同资源的请求时,它会同时把从Web浏览器处收到的cookie再传回去。
cookie也可以利用JavaScript在客户端进行创建和删除
HttpSession对象
在所有的Session追踪技术中,HttpSession对象是最强大的,也是功能最多的。用户可以没有或者有一个HttpSession,并且只能访问自己的·HttpSession
HttpSession是当一个用户第一次访问某个网站时自动创建的。通过在HttpServletRequest中调用getSession方法,可以获取用户的HttpSession
与网址重写、隐藏域和cookie不同的地方在于,放在HttpSession中的值是保存在服务器的内存中的。注意,HttpSession中保存的值不发送到客户端,这与其他的Session管理方法不同。Servlet容器为它所创建的每一个HttpSession生成一个唯一标识符,并将这个标识符作为一个token发送给浏览器,一般是作为一个名为JSESSIONID的cookie,或者作为一个jsessionid参数添加到URL后面。在后续的请求中,浏览器会将这个token发送回服务器,使服务器能够知道是哪个用户在发出请求。
HttpSession中还定义了一个invalidate方法。这个方法强制Session过期,并将绑定到它的所有对象都解除绑定。在默认情况下,HttpSession是在用户静默一定时间之后过期。可以在部署描述符的session-timeout元素中将session的期限设置为整个应用程序
添加到HttpSession中的值不一定是String,可以为任意Java 对象,只要它的类实现了java.io.Serializable接口即可,以便当Servlet容器认为有必要的时候,保存的对象可以序列化成一个文件或者保存到数据库中

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值