2.Web开发基础
Web开发基础
1、网络基础
- IP地址 (32bit)
- MAC地址 (48bit)
2、OSI模型
应用层:
应用层提供各种各样的应用层协议,这些协议嵌入在各种我们使用的应用程序中,为用户与网络之间提供一个打交道的接口。
- 用户接口:应用层是用户与网络,以及应用程序与网络间的直接接口,使得用户与网络进 行交户式联系。
- 实现各种服务:该层具有的各种应用层协议可以实现用户请求的各种服务。
网络协议:HTTP(80)、TFTP(69)、SMTP(25)、
FTP(20):FTP传输数据端口,是否会用到20端口与FTP传输模式有关,主动模式使用20 端口传输,被动模式下服务器端和客户端协商决定端口。
FTP(21):FTP传输控制信息端口(默认)
表示层:
处理用户信息的表示问题,如编码、数据格式转换和加密解密等。
- 数据格式处理:协商和建立数据交换的格式,解决各应用程序之间在数据格式表示上的差异
- 数据的编码:处理字符集和数字的转换
- 压缩和解压缩:为了减少数据的传输量,这一层还负责数据的压缩与恢复
- 数据的加密与解密:可以提高数据在传输过程中的安全性
网络协议:Telnet(23)、SNMP(UDP161)、Gopher(70)
会话:
组织和协调两个会话进程之间的通信,并对数据交换进行管理。
- 会话管理:允许用户在两个实体设备之间建立、维持和终止会话,并支持它们之间的数据交 换。
- 会话流量控制:提供会话流量控制和交叉会话功能。
- 寻址:使用远程地址建立会话连接。
- 出错控制:接收来自传输层的数据,并负责纠正错误。
网络协议:DNS(53):TCP是用来做区域传送。
UDP是用来做DNS解析的。
传输层:
向用户提供可靠的端到端的差错检测和流量控制,保证报文的正确传输,同时向高层屏蔽下层数据通信的细节,即向用户透明的传送报文。
网络协议:TCP、UDP
网络层:
在数据链路层的基础上,进一步管理网络中的数据通信,控制数据链路层与传输层之间的信息转发、建立、维持和终止网络的连接。
网络协议:IP、ICMP、ARP
数据链路层:
在物理层提供比特流的基础上,通过差错控制、流量控制方法,使有差错的物理线路变为无差错的数据链路,提供可靠的物理介质传输数据的方法。
网络协议:PPP
物理层:
利用传输介质为数据链路层提供物理连接,实现比特流的透明传输。不可靠的。
网络协议:IEEE 802.2到IEEE 802.11
3、通信子网:(数据通信)
物理层、数据链路层、网络层
提供各种面向网络的服务。
4、资源子网:(数据处理)
会话层、表示层、应用层
提供各种面向用户的服务。
传输层位于通信子网与资源子网的连接处,主要功能是实现底层协议与高层协议的接口和转换。
5、DNS
DNS域名的层次结构:
- 顶级域名:.com、.edu、 .gov、 .mil
- 二级域名
- 子域名
DNS查找顺序:
浏览器缓存--->本地hosts文件--->DNS服务器
DNS查询方式:
- 递归查询
- 迭代查询
6、HTTP
HTTP请求方法:
- GET:请求指定的页面信息,并返回实体主体
- POST:向指定资源提交数据进行处理请求
- HEAD:类似于GET请求,只不过返回的响应中没有具体内容,用于获取报头
- PUT:从客户端向服务器传送的数据取代指定的文档的内容
- DELETE:请求服务器删除指定的页面
- OPTIONS:允许客户端查看服务器的性能
HTTP状态码:
1xx:信息,服务器收到请求,需要请求者继续执行操作
2xx:成功,操作被成功接收并处理
- 200:请求成功。一般用于GET和POST请求
- 201:成功请求并创建了新的资源
3xx:重定向,需要进一步的操作以完成请求
- 301:资源永久移动
- 302:资源临时移动
4xx:客户端错误,请求包含语法错误或者无法完成请求
- 400:客户端请求的语法错误,服务器无法理解
- 401:请求要求用户的身份认证
- 403:服务器理解请求客户端的请求,但是拒绝执行
- 404:无法找到资源
- 405:客户端请求中的方法被禁止
5xx:服务器错误,服务器在处理请求的过程中发生了错误
- 500:服务器内部错误,无法完成请求
7、MySQL与网络安全的关系:
- SQL注入
- outfile和dumpfile写shell
- 日志getshell
- mof提权和udf提权
8、web应用架构:
web前端
- web应用:电商平台、教育平台
- web开发框架:ThinkPHP、Spring
- web语言:PHP、Java
中间件
IIS、Nginx、Apache、Tomcat
数据库
Mysql、Oracle、SQL server
服务器
Windows、Linux
2.Web开发基础的更多相关文章
- [置顶] 提高生产力:Web开发基础平台WebCommon的设计和实现
Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架 ...
- 提高生产力:Web开发基础平台WebCommon的设计和实现
Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架 ...
- PHP 系列:PHP Web 开发基础
PHP是动态类型的Web开发的脚本语言,PHP以页面文件作为加载和运行的单元,PHP现在有了Composer作为开发包管理. 1.使用Composer管理依赖 自从.NET开发用了Nuget管理程序集 ...
- 移动WEB开发基础入门
什么是移动WEB开发,我个人理解就是,将网页更好的显示在移动端的一些设置,简单来说就两点如下: 1.流式布局,即百分比自适应布局 将body下的div容器的样式设置如下: div{ width:100 ...
- 第五模块:WEB开发基础 第3章·BootStrap&JQuery开发
01-JQuery介绍 02-jQuery文件引入和加载的区别 03-jQuery的基础选择器 04-jQuery的层级选择器 05-jQuery的基本过滤选择器 06-jQuery的属性选择器 07 ...
- 第五模块:WEB开发基础 第1章·HTML&CSS基础
01-前端介绍 02-HTML介绍 03-HTML文档结构 04-head标签相关内容 05-常用标签一之h1~h6,p,a 06-常用标签一之ul.ol.div.img.span 07-常用标签二- ...
- Web开发基础知识
综述 最近开始Java Web方面的工作,千里之行始于足下,我们在开发过程中要善于总结自己遇到的问题.善于管理一些优秀的代码片段.本文的主要内容是Web开发的基础知识,对于大牛来说可以忽略,对于初入W ...
- 移动端web开发基础概念
最近在了解移动端web开发的相关知识,有些概念总是模糊不清,这次花费了一些时间整体的梳理了一遍. 分辨率 分辨率可以从显示分辨率与图像分辨率两个方向来分类.显示分辨率(屏幕分辨率)是屏幕图像的精密度, ...
- web开发基础--字节序
字节是网络传输上的最小单位,是web开发中需要了解的一个知识点. 1.有效位 在谈字节序前需要先了解有效位,有效位分为两种:最低有效位(LSB: Least Significant Bit) 和最高有 ...
- Java Web开发基础(3)-JSTL
在DRP项目中接触到了JSTL标签库,对我这样的比較懒的人来说,第一感觉就是"惊艳". JSTL标签库的使用.能够消除大量复杂.繁复的工作.工作量降低的不是一点半点.是降低了一大半 ...
随机推荐
- sequelize的创建接口以及模糊查询
第一步: 在routes里面复制index.js更改为xxx.js(例如arctile.js) res.json()返回的就是json文件 第二步: 在views里app.js引用路由 第三步:查找数 ...
- Java 基础(二)
类的初始 类中包括:属性,方法. 快速使用 我们都是人,而人的共同特点有很多. 比如:名字,年龄,性别,吃饭,睡觉... // 定义类 public class Person { // 定义属性 St ...
- kafka例子
<dependencies> <dependency> <groupId>org.apache.kafka</groupId> <artifact ...
- oracle建表和sqlserver建表
oracle declare num number;begin select count(1) into num from user_all_tables where Upper(Table_Name ...
- pycharm cv2 的方法不能智能提示
按住ctrl,光标放在cv2上,就能跳转到cv2的__init__.py文件 全选,按Ctrl+/注释掉所有语句,然后将如下语句添加到__init__.py中 import sys import os ...
- ES7-ES12总结篇
脑图模式 插入 ES7-ES12 ES7 Array.prototype.includes() includes() 方法用来判断一个数组是否包含一个指定的值,如果包含则 ...
- Jmeter-接口测试(三)
一.jmeter接口关联 1.正则表达式实现接口关联 正则表达式可以这样测试 2.jsonpath表达式实现接口关联(只能作用于返回值是token的) 从根目录开始找$.token 从任意目录开始找( ...
- java中锁的应用(ReentrantLock)
package com.xielu.test; public class explicit { private static Lock lock = new ReentrantLock(); priv ...
- laravel5.5 数据查询记录
laravel5.5版本数据查询 基于 prettus/l5-repository 插件 首先安装好 prettus/l5-repository插件 配置相关参数 1 根据条件查询数据总数 publi ...
- Redis集群模式及工作原理
Redis有三种集群模式:主从模式.哨兵模式和集群模式. 1. 主从模式 所有的写请求都被发送到主数据库上,再由主数据库将数据同步到从数据库上.主数据库主要用于执行写操作和数据同步,从数据库主要用于执 ...