网络基础-应用层协议-HTTP/HTTPS
HTTP/HTTPS
- HTTP
- 基本概念
- 协议格式
- 请求报文
- 请求方法
- 请求资源地址
- 协议版本
- 应答报文
- 常见Header
- 常见状态码与状态描述
- Cookie&Session
- http协议特点
- HTTPS
- 基本概念
- 对称加密与非对称加密
- 数据摘要&数据指纹
- HTTPS工作过程探究
- 只采用对称加密
- 只采用非对称加密
- 双方都采用非对称加密
- 对称加密+非对称加密
- 中间人攻击
- 证书/CA认证
- 数据签名
- CA认证过程
- 最终方案
- 使用最终方案的一些问题
- 中间人篡改证书怎么办?
- 中间人掉包整个证书怎么办?
- 为什么使用数据签名?
- 为什么不直接加密,而是对摘要加密?
- HTTPS协议使用到的密钥
HTTP
基本概念
🚀超文本传输协议(Hypertext Transfer Protocol,HTTP)是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。
🚀HTTP协议默认使用的80号端口。
🚀什么是URL:
URL(Uniform Resource Locator)是指统一资源定位符,是用于完整地描述Internet上网页和其他资源的地址的一种标识方法,也被称为"网址"。
🚀URL中的encode与decode:
encode:
像/ ?# &等这种符号在url中有特殊的意义。如果某个参数中存在这些符号,就要对这些字符进行转义。转义规则:将字符转化为对应的16进制,然后从右往左取4位,每2位做一位,前面加上%->%AB%CD
decode:就是encode的逆过程
协议格式
请求报文
🚀请求报文主要分为四个部分:
- 请求行
- 请求头信息
- 空行(用于分割报头与有效载荷)
- 有效载荷
每一部分通过换行符分隔
🚀请求行的格式:请求方法 请求资源地址 协议版本
请求方法
其中请求方法包括GET/POST/PUT/DELETE等
GET:获取一个静态网页/也能用于提交参数
POST:创建新的资源/提交某种数据例如,登录注册都是用POST方法提交参数
PUT:用于更新服务器上的某种资源
DELETE:用于删除服务器上的某种资源
GET与POST的异同
相同点:二者都可以用于提交参数。
不同点:GET方法提交的参数是通过URL的方式,且提交的参数大小上限为1024字节。POST方法提交参数是放到报文的有效载荷中的,相比于GET方法POST提参的方式更加私密但是二者都是不安全的,至少要经过加密处理。
请求资源地址
请求资源地址:/a/b/c/d.html
本质就是Web服务器下的某种资源的路径,其中第一个/,并不是我们服务器的根目录,而是Web根目录。
协议版本
协议的版本通常为HTTP1.0或者HTTP1.1
应答报文
🚀应答报文主要分为四个部分
- 状态行
- 响应头信息
- 空行(由于报头与有效载荷分离)
- 有效载荷
每一部分通过换行符分隔
🚀状态行的格式:协议版本 状态码 状态描述
常见Header
🚀无论是请求头信息还是响应头信息,其格式都是采用Key:Value的形式进行组织的。
🚀下面展示一些常见的头信息字段:
Content-Type:正文数据类型(text/html…) — 根据需要进行查询即可
Content-Length:正文的长度
Host:ip地址+端口号 — 客户端告诉服务器,它所请求的是哪个主机的哪个端口
User-Agent:声明客户端的操作系统和浏览器版本
Location:通常与状态码3XX搭配使用,告诉客户端接下来去哪里访问
Cookie:将用户的信息告诉客户端,客户端将信息临时存储在本地,通常与Session搭配使用。
Set-Cookie:在响应报文中服务器设置Cookie信息返回给客户端
Etag:将请求资源的唯一标识返回给客户端
断点续传功能的实现
所谓断点续传就是客户端从服务器上下载某种资源时,由于网络出现问题导致下载终止,那么网络恢复时只需接上上次下载的位置继续下载即可,不用从头开始下载。
🚀实现逻辑:
服务器设置Etag字段,告诉客户端它请求资源的唯一标识
当遇到突发情况下载中断,然后恢复时,继续下载
客户端设置If-Range字段,内容就是下载资源的唯一标识
客户端还会设置Range字段,Range字段的格式:bytes=xxx-yyy/文件总大小
xxx和yyy:请求资源的开始字节位置和结束字节位置
服务器收到If-Range字段时,会去检查客户端传来的If-Range对应的value内容与其请求的资源的唯一标识是否一致,如果一致那么再读取其Range字段,知晓具体请求的部分,返回即可,并设置状态码206。
常见状态码与状态描述
1XX:信息性状态码:通常表示请求正在处理
2XX:成功状态码
200:OK 表示请求成功。
202:Accepted 服务器已经接收到请求但是尚未处理完成
3XX:重定向状态码
301:Moved Permanently:永久重定向表示请求的资源已经重新分配URL,以后使用资源现有的URL去访问
302:Found:表示资源分配了新的URL,希望客户端本次使用新的URL去访问
307:Temporary Redirect :与302相同都是临时重定向,下次客户端还是使用老的URL进行访问,但是302可能会使老的请求方法POST重定向为GET方法,但是307会禁止将POST方法重定向为GET方法。
4XX:客户端错误状态码
404:Not Found:表示请求的资源不存在
403:Forbidden:表示请求的资源被拒绝
5XX:服务器错误状态码:
500:Internal Server Error:表示请求时服务器内部发生错误
Cookie&Session
🚀Http本身是无状态的,但是用户希望有会话保持的功能。Cookie实现原理:用户在第一次访问服务器时,服务器会通过设置Set-Cookie字段的方式将用户的信息,返回给客户端,浏览器会将用户的信息进行本地保存(可能是内存,也可能是文件级),当再次访问服务器时,浏览器会在本地读取用户信息,将用户信息提交给服务器,免去了用户再次认证的工作。
🚀Cookie&Session:单纯使用Cookie的方式可能中途被黑客劫持信息的情况,那么黑客就能获取用户的账号密码等信息,如果用户的其他应用使用的也是同样的账号密码,那么造成用户的损失是较大的,进而产生了Cookie+Session的方式,用户在第一次访问服务器的时候,在服务器端会创建一个Session对象(用于存储用户信息)存储在服务器端(内存级或者是文件级),并且产生与Session对象一一对应的Sessionid,通过设置Set-Cookie字段将Sessionid返回给客户端,这样在客户端存储就是一个Sessionid并没有直接存储用户的信息。
http协议特点
1.Http协议是明文传送,是不安全的,后面的Https协议就是对Http协议进行加密处理
2.Http是无连接的:指的是只有当客户端请求时才会建立连接,请求完毕后就是释放连接。这样可以把资源尽快的释放出来,服务于其他客户端。Http及时的释放连接可以大大提高服务器的执行效率
3.Http是无状态的:Http协议本身是无状态的,即服务器不会保留与客户端交易时的任何状态信息,每一次请求都是独立的。这样能够减轻服务器的记忆负担,提高响应速度。
HTTPS
基本概念
🚀HTTPS (全称:Hypertext Transfer Protocol Secure ),是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性 。HTTPS 在HTTP 的基础下加入SSL,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。 HTTPS 存在不同于 HTTP 的默认端口及一个加密/身份验证层(在 HTTP与 TCP 之间)。这个系统提供了身份验证与加密通讯方法。它被广泛用于万维网上安全敏感的通讯,例如交易支付等方面 。
🚀HTTPS协议默认使用的是443端口。
对称加密与非对称加密
🚀对称加密:同一个密钥可以同时作用于信息的加密和解密。
🚀对称加密的特点:计算量小,速度快,效率高。常见算法:DES。
例如,客户端发送一个数字6,使用对称加密算法,加密后的密文为6^8,服务器得到这个密文后,用同样的密钥进行解密,6 ^ 8 ^ 8 = 6.通过异或来加密就是典型的对称加密。
🚀非对称加密:用两个密钥进行加密和解密:公钥和私钥。并且用公钥加密的密文只能用私钥来解密,反之通过私钥加密的数据只能通过公钥来解密。
🚀非对称加密的特点:算法强度复杂,加密速度没有对称加密速度快。常见算法:RSA
数据摘要&数据指纹
🚀数据摘要&数据指纹:原理就是通过单项的散列函数对数据进行运算,生成一段固定长度的数据摘要。但是这并不是一种加密机制,因为没有解密,但是可以用来判断一份数据有没有被篡改,一份数据中只要有一个字母被修改那么形成的数据摘要就有很大的差距。常见算法:MD5。
🚀数据摘要的应用场景举例:
1.账号的登录注册,用户的密码是存储在公司的数据库中的,但是一定不是明文保存,因为一旦数据库泄漏那么产生的影响较大,所以一般在公司数据库中存储的都是用户密码的数据摘要,当用户登陆时,通过对用户输入的密钥进行摘要然后与数据库中存储的数据进行对比。
2.百度网盘的秒传原理:用户在百度网盘上传一份资源后,这份资源会被存储在百度的某个数据库中,并且会给这份资源生成一份数据摘要。例如:用户1在百度网盘中上传了一部电影,用户2上传了一部与用户1同样的电影,百度网盘会先将用户2上传的电影做一次摘要,与数据库中已上传的资源做对比,如果相同证明数据库中已经存在这个数据了,直接建立一个软连接即可。
HTTPS工作过程探究
🚀既然HTTPS协议是对HTTP协议的改进,对数据进行了加密,下面来探究以下HTTPS工作过程。
只采用对称加密
🚀这总方式存在明显的安全漏洞:客户端与服务器如何做到使用同一个密钥?先通过发送一个报文告诉对方使用的密钥是什么?这种方式过于简单,一旦被报文被黑客劫持,那么加密就没有意义。
只采用非对称加密
🚀服务器产生一对密钥,将公钥发送给客户端,客户端以后发送的数据都要先通过公钥加密,这样只有服务器端才能够,对报文解密,同样服务器端发送的数据只有客户端才能解密。这种方式同样存在安全漏洞,无法保证服务器将密钥发送到客户端过程的安全性。
双方都采用非对称加密
🚀客户端与服务器都生成一对密钥,然后交换公钥,这样服务器发送的数据只有客户端能够解密,客户端发送的数据只有服务器能够解密。但是无法避免中间人攻击行为,且都才用对称加密的效率过低。
对称加密+非对称加密
🚀服务器端生成一对密钥,将公钥发送给客户端,客户端在本地生成对称加密密钥,将客户端生成的密钥通过服务器的公钥进行加密发送给服务器,以后双方都采用对称加密的方式进行加密通信,效率对比上一种方式有所提升,但是仍然无法避免中间人攻击的行为。
双方都采用非对称加密&对称加密+非对称加密-共同的弱点
两种方式都存在同样且致命的问题:客户端无法判断收到的公钥确实是来自服务器的,如果这个公钥是来自中间人的,那么这种加密方式就毫无意义。
中间人攻击
🚀以对称加密+非对称加密收到中间人攻击的过程:
🚀服务器生成一对密钥S/S’,服务器将S’密钥发送给客户端,但是不幸报文被黑客截获,这个黑客产生一对密钥R/R’,将R’公钥发送给客户端,这时客户端不能区分这个公钥是否来自于服务器,客户端会生成对称加密密钥,通过R’发送给服务器,实际上是发给了中间人,这时,中间人再生成一个对称加密密钥X,将X发送给服务器,这样这个中间人就夹在了客户端与服务器之间,既可以得到服务器发送给客户端的数据,也可以得到客户端发送给服务器的数据。
受到中间人攻击的本质:客户端无法辨认收到的公钥是否真正的来自服务器端。
证书/CA认证
数据签名
🚀数据签名是基于非对称加密,对数据摘要进行加密后的结果就叫做数据签名。
🚀CA证书签名形成过程:CA机构有自己的公钥和私钥,私钥是不对外公布的,CA机构的公钥在浏览器中是内置的,CA机构会对服务端申请的证书内容进行Hash运算得到的数据摘要通过CA机构的私钥进行加密,得到数据简明。
CA认证过程
🚀服务端在使用HTTPS协议之前要先向CA机构发送一份CSR文件,来申请证书,证书内容包括,签发机构,有效期,服务端使用的域名,公钥,等信息。证书还需要一个数据签名,数据签名=对证书内容进行摘要后使用CA机构的私钥进行加密后的结果。
最终方案
🚀客户端在访问服务器时,服务器会首先将证书发送给客户端,其中就包括服务端的公钥。
🚀客户端识别证书的过程:1.判断证书是否还在有效期内。2.判断证书的签发机构是否受信任(操作系统中已经内置了受信任的证书签发机构)3.对证书的数据签名使用CA机构的公钥解密得到证书内容的数据摘要,然后通过同样的Hash算法对本证书的内容做数据摘要,比对两份摘要是否一致。4.还要比对证书上的域名与之前访问的域名是否一致以防中间人掉包整个证书。
使用最终方案的一些问题
中间人篡改证书怎么办?
🚀1.篡改证书内容:客户端收到证书后,会对证书的内容做Hash得到数据摘要,与数据签名解密后的摘要做对比,如果篡改了证书内容,两个摘要就会匹配不成功的。
🚀2.篡改整个证书的内容:中间人将证书的内容修改后,并且对内容做一次摘要,并且对摘要做数据签名,发送给客户端。这样做客户端也是能察觉出来的,因为客户端使用的是CA机构的公钥对数据签名解密的,如果中间人篡改了证书的数据签名的话,是解密不成功的。
中间人掉包整个证书怎么办?
🚀首先中间人没有能力制造假的证书,因为浏览器都是使用的CA机构的公钥对数据签名做解密的,如果使用假的证书,浏览器会解密失败的。那么中间人就要申请真的CA证书,那么中间人就要向CA机构提供自己的各种信息,相信他也不会这么做,即使这么做了之后,同样会出现问题,浏览器识别到证书中的域名与自己想访问的域名不一致,也会识别证书失败的。
为什么使用数据签名?
🚀防止中间人改掉证书的内容,然后重新生成一份摘要。
为什么不直接加密,而是对摘要加密?
🚀缩小密文的长度,加速密文的加密和机密提高效率。
HTTPS协议使用到的密钥
🚀一共设计到三组密钥:1.CA机构的公钥和私钥。2.服务器端生成的一对非对称加密密钥。3.客户端生成的对称加密密钥。 最终服务器与客户端之间使用的是客户端生成的对称加密密钥进行通信的,前两个密钥都是为了保证这个对称加密密钥的可靠性。
相关文章:
网络基础-应用层协议-HTTP/HTTPS
HTTP/HTTPS HTTP基本概念协议格式请求报文请求方法请求资源地址协议版本 应答报文 常见Header常见状态码与状态描述Cookie&Sessionhttp协议特点 HTTPS基本概念对称加密与非对称加密数据摘要&数据指纹HTTPS工作过程探究只采用对称加密只采用非对称加密双方都采用非对称加…...
problen(5)ubuntu版本问题
浅浅记录一下这段时间的血和泪吧,大概耗时快一个月了吧,终于解决了...... 因为需要开启pwn之旅,需要在Ubuntu上安装一些东西,就是下面的一条命令: sudo pip3 install pwntools -i Simple Index(显示不太好了…...
写一篇nginx配置指南
nginx.conf配置 找到Nginx的安装目录下的nginx.conf文件,该文件负责Nginx的基础功能配置。 配置文件概述 Nginx的主配置文件(conf/nginx.conf)按以下结构组织: 配置块功能描述全局块与Nginx运行相关的全局设置events块与网络连接有关的设置http块代理…...
rhel8防火墙firewalld操作
1.查看默认区域 [rootlocalhost r]# firewall-cmd --get-default-zone public2.查看网卡关联的区域 [rootlocalhost r]# firewall-cmd --get-zone-of-interfaceifcfg-ens160 external 3.设置网卡的默认区域修改为work [rootlocalhost r]# firewall-cmd --zonework --change…...
OpenCV项目实战(2)— 如何用OpenCV实现弹球动画
前言:Hello大家好,我是小哥谈。OpenCV能够在画布上绘制静态的图形,例如,线段、矩形、正方形、圆形、多边形、文字等。那么,能不能让这些静态的图形移动起来?如果能,又该如何编写代码呢ÿ…...
golang iris框架 + linux后端运行
go mod init myappgo get github.com/kataras/iris/v12latestpackage mainimport "github.com/kataras/iris/v12"func main(){app : iris.New()app.Listen(":port") }打包应用 go build main.go开启服务 #nohup ./程序名称 nohup ./main关闭后台 #ps -e…...
linux shell操作- 02 常用命令及案例
文章目录 常用命令 续 常用命令 续 定时任务 通过文本编辑cron任务,实现定时操作 分 小时 天 月 星期 绝对路径sh or cmd* 表示每个xxx,如每个小时每小时的第三分钟执行cmd-> 03 * * * * /home/lauf/scraw.sh每天的第5、8个小时执行-> 00 5,8 * *…...
考研408 | 【计算机组成原理】 数据的表示和运算
进位计数制 十进制计数法: 推广:r进制计数法 任意进制-->十进制: 二进制<-->八进制、十六进制: 各种进制的常见书写方式: 十进制-->任意进制: 十进制-->二进制(拼凑法ÿ…...
【小沐学NLP】AI辅助编程工具汇总
文章目录 1、简介2、国内2.1 aiXcoder2.1.1 工具特点2.1.2 部署方式2.1.3 使用费用2.1.4 代码测试2.1.4.1 代码搜索引擎2.1.4.2 在线体验 2.2 CodeGeeX2.2.1 工具特点2.2.2 部署方式2.2.3 使用费用2.2.4 代码测试 2.3 Alibaba Cloud AI Coding Assistant(cosy&#…...
linux动态扩容系统盘(非lvm磁盘)
查看磁盘状态 执行df -Th查看磁盘情况 [rootiotdbtest1 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs 7.7G 0 7.7G 0% /dev tmpfs tmpfs 7.7G 0 7.7G 0% /dev/shm tmpfs tmpfs …...
Gitlab仓库部署
Gitlab仓库部署 一、Gitlab的概述1、gitlab介绍2、gitlab主要功能3、gitlab和github的区别 二、部署环境1、安装依赖环境2、安装Postfix邮箱3、Gitlab优势4、Gitlab工作流程 三、Gitlab部署过程1、Yum安装Gitlab2、配置gitlab站点URL3、启动并访问Gitlab 四、Gitlab具体操作1、…...
Day46:项目-购物车案例
购物车案例 准备工作 首页默认加载,其余页面懒加载 调用defineStore方法构建store 入口main做对应配置,找指南,快速开始,把elementplus引入进来 import { createApp } from "vue"; import { createPinia } from &qu…...
【小沐学CAD】嵌入式UI开发工具:GL Studio
文章目录 1、简介2、软件功能3、应用行业3.1 航空3.2 汽车3.3 防御3.4 工业3.5 电力与能源3.6 医疗3.7 空间3.8 科技 结语 1、简介 https://disti.com/gl-studio/ DiSTI 是 HMI 软件、虚拟驾驶舱、仪表、信息娱乐、集群显示器和嵌入式 UI 解决方案的领先提供商。 而它的GL Stu…...
Python:Tornado框架之获取get和post的传参
一、获取get方式传参 import tornado.ioloop #导入tornado包 import tornado.web class MainHandle(tornado.web.RequestHandler):def get(self,id): #定义请求函数self.write("Hello %s!" %id)apptornado.web.Application([ #定义应用配置函数(r"/…...
JSON和全局异常处理
目录 1️⃣JSON 一、什么是json? 二、与javascript的关系 三、语法格式 四、注意事项 五、总结 六,使用json 1导入pom.xml依赖 2.配置spring-mvc.xml 3. ResponseBody注解使用 创建一个web层控制器 编写ClazzBiz 实现接口 测试: …...
骨传导耳机有害处吗、骨传导耳机真的不好用吗?
骨传导耳机没有害处。 骨传导耳机是通过将声音传递到颅骨,再由颅骨传递到内耳,从而达到听声音的效果,与传统的耳机不同。 因此,骨传导耳机不会直接对人的身体健康、耳朵产生压力和损伤,也不会影响耳道和中耳的正常功能…...
第一类曲面积分:曲面微元dσ与其投影面积微元dxdy之间的关系推导
第一类曲面积分:曲面微元dσ与其投影面积微元dxdy之间的关系推导 本篇博客精简自本人关于曲面积分的博客:详情见:曲面积分(Surface Integral) 曲面参数化(曲面上的每个点都使用起点为原点、终点为该曲面上的点的向量表示&#x…...
vue学习之Font Awesome图标
官方文档 https://fontawesome.com.cn/v5 Font Awesome 安装 cnpm install font-awesome/src/main.js 引入css import Vue from vue; import ElementUI from element-ui; import element-ui/lib/theme-chalk/index.css; import App from ./App.vue;...
mysql内连接与外连接详解
内连接与外连接 内连接外连接 在数据库中,连接操作是一种把两个或者多个表的记录组合在一起的操作,常用的有内连接(Inner Join)、外连接(Outer Join)等。 内连接 内连接(Inner Join࿰…...
在Mujoco环境下详细实现PPO算法应用于Humanoid-v2的完整教程
第一部分:介绍 1. 背景介绍 MuJoCo,或称为多关节动力学与控制的物理引擎,已经成为了强化学习中仿真环境的首选工具。其精确的物理仿真和高效的速度使得研究者可以在这个环境下测试和验证各种算法。PPO,即近端策略优化,是一种深度强化学习中的策略优化方法。它解决了TRPO…...
怎么给网络加速
首先,按winr,调出运行窗口。 输入cmd,回车,再输入gpedit.msc,调出本地组策略编辑器。 点击计算机配置下的管理模版。 再点击网络。 再点击Qos数据包计划程序。 再点击限制可保留宽带。 选择已启用,再把带宽…...
golang for循环append的数据重复
原因,因为使用了& 需要增加一行,问题解决...
趣谈网络协议_1
趣谈网络协议_1 第1讲 | 为什么要学习网络协议?第4讲 | DHCP与PXE:IP是怎么来的,又是怎么没的?动态主机配置协议(DHCP) 第5讲 | 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?第…...
利用WebStorm开发react——本文来自AI创作助手
要在WebStorm中开发React应用程序,请按照以下步骤进行设置: 1.安装Node.js和npm(如果尚未安装)。 2.下载和安装WebStorm。 3.打开WebStorm,并在欢迎界面中选择“Create New Project”。 4.在弹出窗口中,…...
将本地构建的镜像推送到远程镜像库,构建多种系统架构支持的Docker镜像并推送到Docker Hub
目录 推送到 Docker Hub前提:需要在 [Docker Hub](https://hub.docker.com/) 创建账户、创建仓库。1. 创建 Dockerfile 和构建镜像:docker build -t2. 登录到远程镜像库:docker login3. 将镜像标记为远程仓库地址:docker tag4. 推…...
【技术分享】NetLogon于域内提权漏洞(CVE-2020-1472)
一、漏洞介绍 CVE-2020-1472是一个Windows域控中严重的远程权限提升漏洞。攻击者在通过NetLogon(MS-NRPC)协议与AD域控建立安全通道时,可利用该漏洞将AD域控的计算机账号密码置为空,从而控制域控服务器。该漏洞适用于Win2008及后…...
python学习之【模块】
前言 上一篇文章 python学习之【深拷贝】中学习了python中的深浅拷贝学习内容,这篇文章接着学习python中的模块。 什么是模块 在python中,一个文件(以“.py”为后缀名的文件)就叫做一个模块,每一个模块在python里都…...
dns电脑服务器发生故障怎么修复
DNS电脑服务器发生故障可能会导致网络连接问题、网页无法访问、或者电子邮件无法发送等情况。修复DNS电脑服务器故障可以采取多种方法,例如检查网络连接、更换DNS服务器等措施。当DNS电脑服务器发生故障时,可以采取以下修复措施: 尝试刷新DNS…...
Python项目Flask ipv6双栈支持改造
一、背景 Flask 是一个微型的(轻量)使用Python 语言开发的 WSGI Web 框架(一组库和模块),基于Werkzeug WSGI工具箱/库和Jinja2 模板引擎,当然,Python的WEB框架还有:Django、Tornado、Webpy,这暂且不提。 Flask使用BSD授权。 Flask也被称为microframework(微框架),F…...
hcia 目的mac为(单播 组播 广播)mac
从下往上看...
山西企业模板建站信息/可以直接进入网站的正能量
苹果已经发布了其Swift 5编程语言 ,具有稳定的应用程序二进制接口(ABI)和二进制兼容性,苹果公司表示这将导致更小的应用程序的开发。 与其他语言的互操作性也得到改善。 通过此升级,ABI现在可以在Apple平台上稳定&…...
电子商务网站建设核心是/舆情信息网
1.使用XShell将下载好的jdk-9.0.1_linux-x64_bin.tar.gz包上传到/opt/下 2.解压文件 $ tar -zxvf jdk-9.0.1_linux-x64_bin.tar.gz3.重命名 $ mv jdk-9.0.1 jdk94.打印JAVA_HOME目录 $cd /opt/jdk/jdk9 $pwd /opt/jdk/jdk95.设置环境变量: $ vi /etc/profile #在文件…...
建筑设计公司资质/惠州seo管理
腾讯云服务器用的是:CentOS 7.4 64位镜像; 一、登录服务器 二、安装Apache 1.安装 yum -y install httpd 2.开启apache服务 systemctl start httpd.service 3.设置apache服务开机启动 systemctl enable httpd.service 4.验证apache服务是否安装成功 在本机…...
贵州建设监理协会网站/公司网站建设步骤
MySql noinstall-5.1.xx-win32 配置(原创)1、解压mysql-noinstall-5.1.xx-win32.zip 到你喜欢的目录,例如:d:\php\mysql2、在根目录d:\php\mysql中有五个配置信息文件:my-small.ini (内存 < 64M)my-medium.ini (内存 128M )my-large.ini (内存 512M)m…...
wordpress 加上广告/潍坊今日头条新闻最新
BPMN Web建模组件Activiti ModelerActiviti Modeler简介编辑模型导入模型流程定义转换成模型模型导出成BPMN XML模型部署到Activiti引擎Activiti Modeler简介 Activiti Modeler是一个BPMN web建模组件,是Activiti Explorer web应用的一部分Activiti Modeler的目标是支持所有BP…...
wordpress命令安装/株洲seo排名
撰文:Tim Beiko编辑:南风以太坊向 PoS 的过渡——合并——即将到来:devnets (开发网络) 正在被建立起来,规范正在被敲定,向社区拓展也已经正式开始。合并被设计为对以太坊终端用户、智能合约和 dapps 的影响最小化。尽…...