2019-09-0118:00:48
即将毕业的PHP小学生,在网上看了很多面试资料和相关东西,在这里记录下来,有些地方可能会涉及到别人的原创,但是当时做笔记时候没有添加,如果冒犯,请告诉我,我会补充上注明来源。(学习路上有很多错误,和忽略的地方,希望大家能多多指正,谢谢!!!)
1.TCP/IP三次握手(建立TCP连接)
首先是服务器处于LISTEN(监听状态),等待客户端的连接请求。
在网上看过的建立连接这一部分,很清晰的一种解释方法就是:
客户端:我要开始了
服务端:好的
客户端:那我真的开始了
防止失效的连接请求到达服务器,让服务器打开错误连接。
客户端发送的连接请求如果在网络中滞留,那么就会隔很长一段时间才能收到服务器端发回的连接确认。客户端等待一个超时重传时间之后,就会重新请求连接。但是这个滞留的连接请求最后还是会到达服务器,如果不进行三次握手,那么服务器就会打开两个连接。如果有第三次握手,客户端就是忽略服务器之后发送的对滞留请求的连接确认,不进行第三次握手,因此就不会再次打开连接。
很清晰的一种解释方法:
客户端:我要结束
服务端:好的,等我把数据发完
服务端:我发完了
客户端:那我真结束了
客户端发送了FIN连接释放报文之后,服务器收到了这个报文,就进入了CLOSE-WAIT状态。这个状态是为了让服务器端发送还未传完的数据,传送完毕之后,服务器会发送FIN连接释放报文。
TIME_WAIT是一种TCP状态。等待2mls可以保证客户端最后一个报文段能够到达服务器,如果未到达,服务器则会超时重传连接释放报文段,使得客户端、服务器都可以正常进入到CLOSE(关闭)状态。
三次握手和四次挥手,我觉得挺多都会问的,但是我所了解的,就这样,还需要在去深入了解。
OSI七层:
物理层,数据链路层,网络层,传输层,会话层,表示层,应用层。
一次HTTP请求的过程(web请求过程)
(有的地方不在准确,不够深入细致,欢迎纠正)
状态码分类
状态码 | 整体范围 | 已定义范围 | 含义 |
1XX | 100~199 | 100-101 | 信息提示 |
2XX | 200~299 | 200-206 | 成功 |
3XX | 300~399 | 300-305 | 重定向 |
4XX | 400~499 | 400-415 | 客户端错误 |
5XX | 500~599 | 500-505 | 服务器错误 |
常见协议端口
ftp | 21 |
ssh | 22 |
telnet | 23 |
http | 80 |
smtp | 25 |
snmp | 161 |
https | 443 |
…… | & |
常见端口:
200 请求成功 400 告知客户端发送了错误请求
206 部分请求 403 请求被服务器拒绝
301 在请求的链接被移除时使用 404 无法找到请求的URL
302 在请求临时的链接使用 413 请求实体过大
304 资源未被修改可以使用旧资源 500 服务器遇到错误
307 在请求临时的链接使用 502 代理或网关错误
503 无法为请求提供服务 504 代理或网关超时
在做东西时候,碰见过返回413,但是在网上找资料找了下。
我当时修改了nginx.conf中的client_max_body_size;php.ini中的upload_max_filesize(限制PHP处理上传问价你的最大值,此值必须要是postmaxsize)、post_max_size(限制通过POST方法可以接受的信息最大量)
然后重启php和nginx就ok了。
做的这一部分笔记就这样,会记录学习过程相关的部分知识。谢谢!欢迎纠正。
原文:https://www.cnblogs.com/zhaoguofeng/p/11442877.html