网站这个东西在2022年似乎不太合时宜了,并且相同类型的教程也海了去了,写这篇教程纯粹是因为手痒,至于内容质量,谁看啊?以下内容均为个人经验,不会有太多理论讲述。本人语言表达能力有限,个人经验相对专业人士有所欠缺,如有表达描述不到位之处还请高抬贵手。不包括上线了、GitHub Pages 这类纯静态网站托管服务。

网站原理

首先需要知道一个网站的运行方式和大概结构,下图便是一个正常网站的结构。假如一个网站是一户住宅,那域名就是住宅的门牌号,而房屋内的布置就交给服务器来展示。
网站结构

域名

上面讲过了,域名就是一个网站的门牌号,比如本站的 ymckc.cn 就是一个 CN 后缀的顶级域名,而现在看地址栏,blog.ymckc.cn 是一个二级域名。

为什么要有域名

你当然也可以绕过域名,直接使用服务器的 IP 地址进行访问,但这么一长串数字真的很难记住,不便宣传的同时还带来了安全风险。而域名就不一样了,你可以根据你的需求选择一个域名,然后在地址栏输入它,管理域名的 DNS 服务器会自动导航到服务器上,比直接用 IP 方便不少。

域名的分级

顶级域名就是通俗来说的「域名后缀」。理论上来说,域名是可以分无数级的,但没有这个必要。对于一般的个人网站做一个顶级域名就够了,或者细分功能做二级域名,再多下去纯属闲得蛋疼。对于怎么设置多级域名会在后面的实操中讲到。

域名分级

域名的注册

域名是没有永久的,最多可以买十年,仍然是可以但没必要。大多数域名注册商都是一年起步,对于个人来说足够了,万一买了个域名,还没满一年就玩腻了呢?

免费域名

这里只讲顶级域名,免费的二级域名有翻车的风险,并且对于网站运营也不友好。目前我所见过的确提供免费顶级域名的只有国外的 Freenom 一家,他们提供了五个免费的域名后缀(.TK / .ML / .GA / .CF / .GQ)。由于是免费的并且注册门槛低,有很多不良网站喜欢在这里注册,导致这五个域名在搜索引擎权重方面很差,也是需要注意的一点。

付费域名

当你决定追求更稳当时,就不可避免地要氪金了,买一个域名吧!付费的注册商很多,但最好是选口碑好且规模大的,以免翻车,上图里列出的几家注册商是可以看看的。

此外选择注册商也是需要考虑一下,国内注册商需要实名,但本地化服务更好,而国外注册商一般没这么多手续,这一点见仁见智。

国家代码顶级域名

顶级域名又分为国家代码顶级域名和通用顶级域名,通用顶级域名(例如 .COM / .NET / .TOP)是没有注册限制的,但绝大多数国家代码顶级域名(例如 .CN / .US / .EU)都仅面向其对应国家或地区的公民开放注册,与此对应的是这类域名价格相对通用顶级域名来说会便宜很多。

服务器

以上就是关于域名的部分。你得到了一个门牌号(域名),还需要一个房间(服务器),二者缺一不可。这里关于服务器从硬件和软件两个方面来讲,但实际操作时还是需要先决定硬件再决定软件。

服务器类型

笼统地讲,服务器是一台联网的计算机,它拥有一个固定的 IP 地址,但互联网发展至今,一台服务器一个 IP 一个网站显然不够用,于是服务器朝着多个方向发展,在选择服务器时尽量根据自己的需求选择最合适的类型,避免买来不够用,或者性能过剩。

虚拟主机

虚拟主机又称共享主机,是在一台服务器上划分若干部分,预先配置好网站环境,在这些部分里托管网站内容,用户通过特定的控制面板(例如 cPanel、DirectAdmin 等)进行管理。其特点就是成本低,上手快,但用户权限也低,并且同一台服务器上的网站共用一个 IP 地址,无法满足大型网站的需求,但用来做轻量级的个人网站还是足够的。

VPS

VPS 又称虚拟专用服务器,一个 VPS 是在一台物理服务器上分配一定资源。从用户角度上,虚拟主机来说有更高的管理权限,还有独立的 IP 地址。但 VPS 受限于其物理性质,硬件资源分配相对固定,不像云服务器那样可以弹性调整。

云服务器

云服务器的原理与 VPS 差不多,但云服务器是基于多个服务器集群来划分资源的,其最大特点是可以根据运行负荷弹性调整服务器资源。

VPS 和云服务器相较于虚拟主机需要自行配置网站运行环境,用户需要掌握更多的专业知识,但有更大的发挥空间,例如开一个 Minecraft 多人服务端,甚至当作一台远程电脑。

服务器软件

选好了想要的服务器,就该考虑网站怎么运行了。一般来说网站分为静态网站和动态网站,区别在于静态网站的每一份内容都是存放于服务器上的,交互性不佳,更适合纯粹展示的网站;而动态网站的运行是以数据库为基础,网站文件更多地扮演程序的角色,把数据库的内容调动展示,同时在用户层面能够更好地进行交互,实时性强。无论是哪种网站,为了让网站跑起来,都需要安装服务器软件,几大服务器软件分别是 IIS(仅 Windows 平台)、Nginx 、Apache 和 Tomcat。

静态网站

静态网站不需要做什么运行环境的配置,写一个最简单的 HTML 放在网站根目录就可以上线,复杂点还可以加上 CSS,把视觉效果补上,例如本站的主站 ymckc.cn,就是一个静态的 HTML 网页。做好一个静态网站对前端技术的要求不低,毕竟代码纯手打,还要保持视觉上的美观。

动态网站

动态网站的技术门槛就低了很多,但它对运行环境提出了要求,所以仍然要学会配置运行环境,大部分动态网站程序的环境要求都是 PHP + MySQL 这样搭配,虚拟主机会预先配置好,在控制面板里稍做调整即可使用,但服务器就需要自己下载安装了,你也可以用宝塔面板这种傻瓜式工具来配置,比手动配置方便不少。

知名的动态网站程序有 WordPress(博客类)、Typecho(也是博客类)以及 Discuz! (论坛社区类)这些,根据自己的需求来选择,程序官方一般也会给出在不同环境的安装方法。

实操

看到这里,你对于一个网站的运行方式应该有了大概了解,现在来运用刚刚学到的知识,尝试建立一个自己的网站吧。

这里因为成本原因,就用我现有的服务器和域名进行展示了。

购置服务器

为什么先买服务器?因为在域名注册时,可能会要求你填写服务器的 IP 地址,先把服务器买了,有备无患。

以腾讯云的云服务器为例,选好所需配置后进行购买,服务器一般是月付,虚拟主机一般是年付。需要注意的是,国内的服务器绑定域名运行需要进行备案,否则会被掐网线,如果觉得麻烦,可以选购非大陆的服务器。购置服务器

在购买成功后,控制台会新增你刚刚买好的服务器,并且附带有它的公网 IP(如下图右下角),以上就是服务器的购置部分。

服务器信息

购置域名

域名的注册不是一件马虎事,一个好域名可以给整个网站加分不少,所以在下订单前想好要注册什么域名。

以在 DNSPod 购买了 aabbcc.com 域名、服务器 IP 地址是 203.208.41.98 为例,它的 DNS 解析管理页面是下图这样的。选择「添加记录」,在主机记录内填入 @ 和 www,记录值内填入服务器的 IP 地址(203.208.41.98),记录类型为 A 记录,这个操作的意思是分别解析 aabbcc.com 和 www.aabbcc.com。

一般到这一步就可以了,如果你想在此基础上新增一个 123.aabbcc.com 的二级域名,则是再新增一个解析记录,主机记录是「123」,其余部分同配置顶级域名解析。现在的 DNS 解析记录管理比几年前好用不少,还会给你提供快速添加,初学者也不至于还要临场去查要选哪种记录类型。

配置 DNS 解析记录

配置网站环境

如果你选用的是虚拟主机,到这一步已经可以访问网站了,但对于服务器用户还不够,还需要配置网站的运行环境。如果新手不想太多折腾,可以直接装宝塔面板,配置起来没那么繁琐,详细的步骤我就不多讲了,可以参考其他大佬的教程,服务器软件仍然是必须条件,其次才是根据自己想安装的网站程序来选择环境。

结束

由于个人的技术所限,整个教程只能讲到这里。没人天生就熟练各种技术,我也不敢妄称自己完全熟悉了网站的方法原理,我所知的一切都是通过一次次的探索尝试所学,教程只能算作个人经验,不能适用于所有人所有情况,全文仅供参考。

发表评论