前言 ´・ᴗ・`
-
本篇将简化的介绍你在手机或者电脑或者iwatch等等浏览网页所发生的事情 大佬请略过
-
本文可以带给你…
- 客户机 服务器是什么
- 什么是前端开发、后端开发
- HTTP是啥
- 访问一个静态的web网页 背后的流程是什么
客户机 服务器 前端 后端
上篇我们提到 internet使得全世界的电脑都可以联网,那么对于使用web服务的电脑来说,一般会有新的身份:客户机 Client 和 服务器 Server
相应的,为客户机而开发的就是客户端编程(Clients-side programming),也就是所谓前端开发(front-end scripting)
而为服务器开发就是服务端编程(server-side programming)也就是所谓的后端开发(back-end scripting)
客户端通常还会有**浏览器(browser)**软件来帮助你解析网页(这样你就能看网页了)和 提交表单(比如注册CSDN 填写信息)等等
当你点击我的博客 你就通过浏览器,向csdn的服务器发送了请求(requests),服务器必须响应response你的请求 也就是给你个回复
成功的话,你就见到我的博文了,这就是服务器给你的response——当然是经过浏览器解析(parse) 渲染 (render) 后的结果.
失败的话 有各种失败的代码,其中最常见的就是404 也就是你想要请求访问的资源找不到(其实不一定是找不到 可能是有些东西不想给你 没权限 你懂得)
好了 如果我们有自己的网站呢?首先,我们得有个服务器(云服务器或者实体的服务器 其实就是另一台电脑)。
我们的前端开发 编写的.html .css .js都是放在哪里呢?就是服务器。我们需要**上传(upload)**这些东西到我们自己的服务器,这样别人访问我们的网站,我们服务器就会给他们,我们之前前端开发的这些文件(“他们”也就是 客户 )
当然客户要求一些别的东西 比如说下载电影啊 或者图片什么的 这就是其他网页资源(assets)了,当然也是放在服务器上。
然后客户通过浏览器就能看到我们设计的页面
当然了 话说回来,你不可能让服务器自动帮你做一些相应你客户需求的事——这需要你编程解决,这就是后端开发。
所以一些个人网站的建造者,都是全栈工程师(前端后端都包了),当然现在有很多给你现成模板,让你可以不用开发后端,问题是bug总会很多 也总不能够满足我们个体多样化的需求——这也是为啥我们要学习 服务端编程。
HTTP
HTTP(Hypertext Transfer Protocol) 其实就是一种协议,或者说是一种语言,让你的客户机和服务器通话(通信)
web是怎么工作的呢?
我们把csdn当成静态网页的话 当你在浏览器地址栏输入www.csdn.net 然后回车 所发生的事:
-
你在浏览器地址栏输入www.csdn.net 然后回车
-
浏览器首先向DNS服务器发送请求 让他解析一下“csdn.net”具体对应哪个IP地址
-
浏览器得到IP地址以后,向那个IP地址发送HTTP 请求,要求csdn服务器发一份copy回来,于是你得到了这么一堆文件(.html .css .js .jpg .png, etc)
-
然后浏览器渲染页面 你就看到:
总结 ´◡`
这节比较轻松 讲述了一部分web的相关概念
下一节将更加深入的讲述web,比如网站 网页 web服务器等等行话(jargon)
传送: