web基础

一、互联网基础

关键字:互联网,万维网,HTTP,url,ip

1、互联网与万维网

互联网:互联网是线路、协议以及通过TCP/IP协议实现数据电子传输的硬件和软件的集合体。Internet提供的主要服务有万维网(WWW)、文件传输(FTP)、电子邮件E-mail、远程登录(Telnet)等。万维网是网页集合,是互联网的主要部分,可以看做是在互联网上的一种应用。

目前,围绕互联网发展的业务主要有两类,分别是ISP(互联网服务提供商)ICP(互联网内容提供商);前者是指向广大用户综合提供互联网接入业务、信息业务和增值业务的电信运营商(比如中国电信、移动、联通提供的宽度服务),后者是指向广大用户综合提供互联网信息和增值业务的企业(比如:新浪、搜狐、腾讯)。

万维网:1994年,万维网是存储在互联网计算机中,超文本标记语言(HTML)组织的超文本文档(网页)集合,通过超链接实现连接。网页浏览器从网页服务器取回称为“文档”或“网页”的信息并显示。

超文本传输协议(HTTP)提供了访问超文本信息的功能,是万维网客户端和服务器间的应用层通信协议

2、网址

URL:万维网网址,任何一个信息资源都有统一的并且在网上唯一的地址。

URL格式:协议+域名+路径+?+参数

参考文献:https://blog.csdn.net/Hello_Fsir/article/details/88799806 url路由配置及渲染方式

Http GET请求:把参数放到url中,通过?xx=xxx形式传递

在flask中,route方法默认只能使用GET请求,可以通过传递参数methods参数进行改变。例:

@app.route('/list/', methods=['GET', 'POST'])

在定义url规则时,一定要注意在最后加一个斜杠,如果不加斜杠,那么在浏览器访问这个url时加了斜杠,那么就访问不到,用户体验不太好;如果在url规则中加了斜杠,输入url时加不加斜杠都可以访问 

ip地址:互联网计算机地址

路由:又称网关设备,是用于连接多个逻辑上分开的网络。路由器构成了Internet的骨架。路由器通常连接两个或多个由IP子网或点到点协议标识的逻辑端口。路由器设置了一段自动分配的IP范围,如果上网终端向路由器请求分配IP,路由器就会选择一个未使用的分配给上网终端。

交换机主要是用于组建局域网,而路由器则是负责让主机连接外网。

二、家用网络常识

1、动态ip与静态ip

动态ip:动态指当你每一次上网时,电信会随机分配一个IP地址。而对于大多数拨号上网的用户,由于其上网时间和空间的离散性,为每个用户分配一个固定的IP地址(静态IP)是非常不可取的,这将造成IP地址资源的极大浪费。通过Modem、ISDN、ADSL、有线宽频、小区宽频等方式上网的计算机,都是在每次上网的时候临时分配一个IP地址。

静态ip:对于一个设立了因特网服务的组织机构,由于其主机对外开放了诸如WWWFTP 、E-mail等访问服务,通常要对外公布一个固定的IP地址,以方便用户访问。当然,数字IP不便记忆和识别,人们更习惯于通过域名来访问主机,而域名实际上仍然需要被域名服务器(DNS )翻译为IP地址。例如,你的主页地址,用户可以方便地记忆和使用,而域名服务器会将这个域名翻译为101.12.123.234,这才是你在网上的真正地址。

2、拨号上网( 猫(模电)加电话线ISP拨号)

需要用户拥有一台个人电脑、一个调制解调器(Modem)和一根电话线,再向本地ISP供应商申请自己的账号,或购买上网卡,拥有自己的用户名和密码后,然后通过拨打ISP的接入号连接到Internet上。

具体来说家庭宽带的拨号,是基于PPPoE的拨号模式。在家庭宽带接入网中,PPPoE拨号的目的,是为了鉴别用户的身份并完成计费。哪怕是包月或者是包年的宽带,都需要计费,这就是拨号的目的。

拓展文献:路由器不用拨号能直接上网是为什么?http://ask.zol.com.cn/x/4972311.html

已经将宽带帐号和密码填写进路由器,当第一次路由器通电工作,就会自动拔号连接上互联网

拓展文献:不懂就问,用自己的路由器拨号上网和用电信光猫拨号上网之间到底有啥区别?

区别就是,1.路由器拨号那么猫就是个桥,路由器直接获取 ip 上网 2.猫直接拨号那么就是猫获取 ip,路由器只是获取了猫 DHCP 的 IP.猫直接拨号,你可以不用路由器,电脑插上网线连接猫,或者直接连上猫的 wifi 就可以。(电信光猫有wifi功能,但仍不支持多用户ip动态分配吧)

3、路由模式和桥接模式

光猫在路由模式下完成了拨号(收费)和路由(连接互联网)。它自己PPPOE拨号并做NAT,成为一台独立的网关,不需要一台机器专门来开机并设置共享上网功能来为其他人做网关,或不需要宽带路由器来做网关,直接与局域网交换机连接就可以共享上网了。

桥接模式:相当于交换模式。网桥工作在数据链路层,是连接两个局域网的一种存储、转发设备,能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器。路由器工作在网络层,根据网络地址如IP地址进行转发。

拓展文献:我为什么要把光猫设置为桥接模式?用路由器拨号上网有什么好处

我解决的方法就把光猫改为桥接模式。(不会影响IPTV)让光猫回归最基本的功能:光电转换、IPTV、座机。购买一个性能稍好的路由器,来完成最占用资源的路由、DHCP服务、NAT、WIFI等功能。

1)适用层次不同。网桥是数据链路层的设备,在网络互联中起到数据接收、地址过滤与数据转发的作用,用来实现多个网络系统之间的数据交换;路由器是网络层的设备,主要用于处理同一个局域网内的数据;

2)适用对象不同。路由模式适用于家庭、单位等小型局域网;网桥适用于网吧、学校、企业、社区等大型组网;

3)设备接口不同。桥模式设备的接口不需要设置IP地址就可以工作,路由模式设备的接口必须配置IP地址才能工作;

4、网关与DNS

网关实质上是一个网络通向其他网络的IP地址,网关ip即路由ip。

DNS域名系统,用于域名与 IP 地址的相互转换。

5、网络连接

网络连接方式网卡/网络适配器设备ip连接方式
有线连接/以太网(部分)有线网卡 拨号,路由
无线连接无线网卡  
蓝牙连接   
虚拟机适配器虚拟网卡(vmnet1-仅主机模式,vmnet8-NAT模式) 桥接,NAT,仅主机

本地连接指设备的网络创建和链接,比如主机通过有线网卡创建本地连接,虚拟机通过NAT连接方式和vmnet8虚拟网卡创建本地连接。如果计算机有多个网络适配器,则每个网络适配器的本地连接图标都将显示在“网络连接”文件夹中。如果计算机网络适配器即网卡没装好或者驱动没装,则以太网(本地连接)图标都将不会显示在“网络连接”文件夹中。

三、局域网通信

关键字:局域网,HTTP,url,虚拟机,NAT

1、局域网

本地使用Vmware搭建了多台虚拟机,对于PC而言,相当于多了一块网卡,每块网卡都有自己的ip地址。
当虚拟机网卡使用host-only模式,那么虚拟机的本地连接跟vmnet1网卡相连
当虚拟机网卡使用nat模式,那么虚拟机的本地连接跟vmnet8网卡相连

虚拟机网络设成桥接的那是跟主机的一样都是从网络提供商那获得的ip,如果设成nat的那就是192.168

私网地址:划出来专门作为局域网内网使用的IP地址。内、外网是相对于防火墙而言的,在防火墙内部叫做内网,反之就是外网

局域网内部网络的所有IP地址都可使用私网地址,而这些私网地址在访问 Internet 时会经过 NAT ( Network Address translation,网络地址转换)技术转换为公网地址再访问 Internet。所以在公网上看不到这些私有地址

有了私网地址,世界上所有局域网都可以用这些私有网络地址来标识局域网络内部的主机,从而避免了IPv4地址用尽的情况,因为私网地址既可以由这个企业的局域网使用,又可以由那个公司的局域网使用,即私网地址可以不断地重复使用。小型企业或家庭网络可以选择192.168.0.0。

A类地址 10.0.0.0~10.255.255.255  B类地址 172.16.0.0 ~172.31.255.255  C类地址 192.168.0.0~192.168.255.255

以太网:目前应用最普遍的局域网技术

2、网络连接模式

(1)桥接模式

设成桥接的那是跟主机的一样都是从网络提供商那获得的ip

(2)NAT模式

设成nat的那就是192.168

(3)Host-only模式
用vmware虚拟机首推host-only模式,将物理网卡网络共享给一个虚拟网卡(安装vmware时会自动安装两个虚拟网卡,选择其中一个便可),这时被共享的那张虚拟网卡会自动配上IP,根据系统分配IP不同,比如win7系统自动分配给虚拟网卡的IP是192.168.137.1,这时来设置虚拟机的IP,虚拟机的IP只要设置成跟被共享的虚拟网卡的IP(192.168.137.1)同一个网段就可以了,网关设置成虚拟网卡的IP(192.168.137.1),这样就行了,虚拟机通过虚拟网卡跟物理机相连,而且共享物理机的网络,只要物理机能上网,虚拟机也能上网,不受物理机IP影响

四、ping 网络诊断工具

1、配置查询 ipconfig  或者 ipconfig/all

2、ping:包探索器,网络连接和配置检测,测试目的站是否可达及了解其有关状态。

 语法:cmd~ 百度ipv4:180.76.76.76 

ping 180.76.76.76

每个主机都可能有多个 ip 地址,比如多个网卡或多 ip,127.0.0.1 是本地环回地址,专供自己访问自己,速度快(不用经过整个协议栈),永远都不能出现在主机外部的网络中,所以只适合用在开发环境。

拓展阅读:Ping命令的七种用法 https://www.sohu.com/a/309859050_1001693233

3、同网段通信

同网段和不同网段设备通信原理详解 https://blog.csdn.net/tao546377318/article/details/50313441

五、Flask搭建HTTP通信中的一些小坑

1、服务器部署失败

if __name__ == '__main__':
    app.run()

Flask运行app.run()默认的配置是127.0.0.1:5000

127.0.0.1 是一个环回地址,并不表示“本机”。0.0.0.0才是真正表示“本网络中的本机”。即:

if __name__ == "__main__":
    app.run(host="0.0.0.0", port=8090)

       在实际应用中,一般我们在服务端绑定端口的时候可以选择绑定到0.0.0.0,这样我的服务访问方就可以通过我的多个ip地址访问我的服务。比如我有一台服务器,一个外网地址A,一个内网地址B,如果我绑定的端口指定了0.0.0.0,那么通过内网地址或外网地址都可以访问我的应用。但是如果我只绑定了内网地址,那么通过外网地址就不能访问。所以如果绑定0.0.0.0,也有一定安全隐患,对于只需要内网访问的服务,可以只绑定内网地址。

       查询外网IP地址的方法:在百度搜索里输入IP地址,然后查询。

       内网ip又称本机ip,外网ip又称运行商ip。

参考文献:127.0.0.1和0.0.0.0地址的区别  https://blog.csdn.net/lycyingO/article/details/104509316

参考文献:内网ip和外网ip区别  https://blog.csdn.net/weixin_42724467/article/details/89147214

参考文献:app = Flask(__name__) 是个什么东西   https://www.cnblogs.com/chaojiyingxiong/p/9549987.html

参考文献:Flask和@app.route()  https://blog.csdn.net/fang_chuan/article/details/81874678

最后,推荐《Flask Web开发实战:入门、进阶与原理解析(李辉著 )》,需要PDF供学习使用,可以私信我。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值