搭建个人博客网站有很多种框架和模式。对于刚入门的人来说,对于拥有一个个人网站可以说是毫无头绪。各种诸如Apache,Nginx, Hexo,WordPress,Typecho等等名次让人开始完全摸不清都是干什么的。
什么是Web服务器?
首先可以确定的是,在我有限的认知里,一个网站需要有一个服务器,这是肯定的,这个服务器首先的有个系统,如Windows,Linux。接下来我们需要某个软件来管理客户端发过来的请求,管理网站的内容,对外提供HTTP服务,或是其他服务。这就是Web服务器的作用。
可以肯定的是,搭建网站,即最基础的需要服务器(Server)。这里的服务器有硬件层面的,也有软件层面的。
1.有时候 server 表示硬件,也就是一台机器。它还有另一个名字:「主机」。
2.更多时候,server 表示软件程序,这种程序主要用来对外提供某些服务,比如邮件服务、FTP 服务、数据库服务、网页服务等。
作为开发者,我们说 server 的时候,一般指的后者。一台主机上面可以运行多个这样的程序。
通俗来说,服务器本质是一个24小时电源开启,执行软件程序的电脑。 你可能会看到一个简单的服务是跑在一台几年前甚至十几年前落满灰尘的老笔记本上的。(当然服务器不作为个人服务的时候服务器当然需要高性能高容量的电脑来运转。)
按分类来说哦,我们说的Apache即是这样的HTTP Web 服务器,同样Nginx也是这样一个东西。
什么是HTTP sever?如何运作?
简单来说即,程序监听机器的某个端口,一旦外部访问了机器的被监听端口,程序就会返回一些内容(如网页,图片,音视频)。
在很多语言如golang,Python,Node.js,PHP等等都可以以简短的代码构造出一个简单的,Hello World级别HTTP server
按分类来说,HTTP服务的server分为两类
- 静态文件服务器
这种服务器简单地根据访问路径,返回对应的文件。
比如用户访问 http:// 123.123.123.123:8080/a/b/c/d.html,那么这种服务器就会在网站根目录找到 a/b/c/d.html 文件,原样返回给用户。
静态网站特点:
-
静态网站是最初的建站方式,浏览者所看到的每个页面是建站者上传到服务器上的一个 html ( htm
)文件,这种网站每增加、删除、修改一个页面,都必须重新对服务器的文件进行一次下载上传。网页内容一经发布到网站服务器上,无论是否有用户访问,每个静态网页的内容都是保存在网站服务器上的,也就是说,静态网页是实实在在保存在服务器上的文件,每个网页都是一个独立的文件; -
静态网页的内容相对稳定,因此容易被搜索引擎检索;
-
静态网页没有数据库的支持,在网站制作和维护方面工作量较大,因此当网站信息量很大时完全依靠静态网页制作方式比较困难;
-
静态网页的交互性较差,在功能方面有较大的限制。
优点: 相对于另外两种页面(动态页面和伪静态),速度最快,不需要从数据库里面提取数据,也不会对服务器产生压力。
缺点: 由于数据都是写在文件里,很有可能会导致文件非常大,占用大量的服务器磁盘空间,每次添加内容都会生成新的文件。更改源代码的话必须全部更改,而不能更改一个地方,全站的静态页面就自动更改了。
- 动态内容服务器