Web开发基础

1、网络基础

  • IP地址 (32bit)
  • MAC地址 (48bit)

2、OSI模型

应用层:

应用层提供各种各样的应用层协议,这些协议嵌入在各种我们使用的应用程序中,为用户与网络之间提供一个打交道的接口。

  1. 用户接口:应用层是用户与网络,以及应用程序与网络间的直接接口,使得用户与网络进 行交户式联系。
  2. 实现各种服务:该层具有的各种应用层协议可以实现用户请求的各种服务。

网络协议:HTTP(80)、TFTP(69)、SMTP(25)、

​ FTP(20):FTP传输数据端口,是否会用到20端口与FTP传输模式有关,主动模式使用20 端口传输,被动模式下服务器端和客户端协商决定端口。

​ FTP(21):FTP传输控制信息端口(默认)

表示层:

处理用户信息的表示问题,如编码、数据格式转换和加密解密等。

  1. 数据格式处理:协商和建立数据交换的格式,解决各应用程序之间在数据格式表示上的差异
  2. 数据的编码:处理字符集和数字的转换
  3. 压缩和解压缩:为了减少数据的传输量,这一层还负责数据的压缩与恢复
  4. 数据的加密与解密:可以提高数据在传输过程中的安全性

网络协议:Telnet(23)、SNMP(UDP161)、Gopher(70)

会话:

组织和协调两个会话进程之间的通信,并对数据交换进行管理。

  1. 会话管理:允许用户在两个实体设备之间建立、维持和终止会话,并支持它们之间的数据交 换。
  2. 会话流量控制:提供会话流量控制和交叉会话功能。
  3. 寻址:使用远程地址建立会话连接。
  4. 出错控制:接收来自传输层的数据,并负责纠正错误。

网络协议: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与网络安全的关系:

  1. SQL注入
  2. outfile和dumpfile写shell
  3. 日志getshell
  4. mof提权和udf提权

8、web应用架构:

web前端

  • web应用:电商平台、教育平台
  • web开发框架:ThinkPHP、Spring
  • web语言:PHP、Java

中间件

IIS、Nginx、Apache、Tomcat

数据库

Mysql、Oracle、SQL server

服务器

Windows、Linux

2.Web开发基础的更多相关文章

  1. [置顶] 提高生产力:Web开发基础平台WebCommon的设计和实现

    Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架 ...

  2. 提高生产力:Web开发基础平台WebCommon的设计和实现

    Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架 ...

  3. PHP 系列:PHP Web 开发基础

    PHP是动态类型的Web开发的脚本语言,PHP以页面文件作为加载和运行的单元,PHP现在有了Composer作为开发包管理. 1.使用Composer管理依赖 自从.NET开发用了Nuget管理程序集 ...

  4. 移动WEB开发基础入门

    什么是移动WEB开发,我个人理解就是,将网页更好的显示在移动端的一些设置,简单来说就两点如下: 1.流式布局,即百分比自适应布局 将body下的div容器的样式设置如下: div{ width:100 ...

  5. 第五模块:WEB开发基础 第3章·BootStrap&JQuery开发

    01-JQuery介绍 02-jQuery文件引入和加载的区别 03-jQuery的基础选择器 04-jQuery的层级选择器 05-jQuery的基本过滤选择器 06-jQuery的属性选择器 07 ...

  6. 第五模块:WEB开发基础 第1章·HTML&CSS基础

    01-前端介绍 02-HTML介绍 03-HTML文档结构 04-head标签相关内容 05-常用标签一之h1~h6,p,a 06-常用标签一之ul.ol.div.img.span 07-常用标签二- ...

  7. Web开发基础知识

    综述 最近开始Java Web方面的工作,千里之行始于足下,我们在开发过程中要善于总结自己遇到的问题.善于管理一些优秀的代码片段.本文的主要内容是Web开发的基础知识,对于大牛来说可以忽略,对于初入W ...

  8. 移动端web开发基础概念

    最近在了解移动端web开发的相关知识,有些概念总是模糊不清,这次花费了一些时间整体的梳理了一遍. 分辨率 分辨率可以从显示分辨率与图像分辨率两个方向来分类.显示分辨率(屏幕分辨率)是屏幕图像的精密度, ...

  9. web开发基础--字节序

    字节是网络传输上的最小单位,是web开发中需要了解的一个知识点. 1.有效位 在谈字节序前需要先了解有效位,有效位分为两种:最低有效位(LSB: Least Significant Bit) 和最高有 ...

  10. Java Web开发基础(3)-JSTL

    在DRP项目中接触到了JSTL标签库,对我这样的比較懒的人来说,第一感觉就是"惊艳". JSTL标签库的使用.能够消除大量复杂.繁复的工作.工作量降低的不是一点半点.是降低了一大半 ...

随机推荐

  1. STM32中遇到的一些关键字

    3.在STM32编程中遇到的一些关键字 STM32是基于RAM的架构,学习它可以是嵌入式的一个基础部分.因此对于一些关键字也必须了解,在STM32学习过程中,遇到过如下变量,对其有疑问 关键字 功能 ...

  2. vue组件淡入浅出动画

    点击动画 hello hello world! .test-enter, .test-leave-to { opacity: 0 } .test-enter-to, .test-leave { opa ...

  3. luogu 4142

    费用流好题 本题的建图很有意思 正常我们看到棋盘问题应该先对整个棋盘黑白染色构成一个二分图,然后再考虑建图的问题 但是本题题目中已经明确区分了不同的斜线,问题在于怎么保证一个"L" ...

  4. oracle建表和sqlserver建表

    oracle declare num number;begin select count(1) into num from user_all_tables where Upper(Table_Name ...

  5. Js-document操作

    # 直接获取标签 document.getElementById('gundong') #获取id为gundong的元素 document.getElementsByClassName('qalist ...

  6. vscode 远程服务器同步

    1.下载 sftp 2. 在项目目录下新建sftp.json文件 3. 编辑sftp.json文件 { "name": "My Server", "h ...

  7. 小梅哥课程学习——串口发送应用之发送数据(可在vivado中仿真出现正确波形)

    //1.底层代码源代码发送10位数据 module uart_pr( clk, reset_n, send_go, data, baud_set, tx_done, uart_tx ); input ...

  8. hdu:"红色病毒"问题(指数型母函数用e^x指数函数来计算)

    Problem Description医学界发现的新病毒因其蔓延速度和Internet上传播的"红色病毒"不相上下,被称为"红色病毒",经研究发现,该病毒及其变 ...

  9. C# Http 服务器get pos 请求 获取头信息 iOS 客户端联调

    using System; using System.Collections.Generic; using System.IO; using System.Net; using System.Text ...

  10. http请求的方法

    1.OPTIONS 返回服务器针对特定资源所支持的HTTP请求方法,也可以利用向web服务器发送'*'的请求来测试服务器的功能性. 2.HEAD 向服务器索要与GET请求相一致的相应,只不过响应体将不 ...