# 「个人博客建站笔记」1.网站建成
这是我在以前博客的第一篇文章,主要记述的是使用 WordPress 和宝塔 Linux 面板,从零开始搭建一个基础博客网站的过程。
- 涉及内容:服务器、域名、域名解析、宝塔 Linux 面板、wordpress 的使用。
- 面向人群:纯新手,无基础。
- 前置知识:中文,部分英文。基础网络知识:如 IP 地址是什么,GB、Mbps 是什么单位。基础计算机知识:CPU、内存、硬盘空间是什么,能区分硬件和软件。
> 旧博客的建成,包括下述内容,有很大一部分是 [TriNitroTofu](https://tofu.icu/) 的功劳,大家有兴趣可以去看看。
## 基础概念
为了得到一个可以访问的网站,我们至少需要三个东西:
1. 服务器
2. 域名
3. 网站系统
网站系统运行在服务器上,提供一个交互的界面,而别人就可以通过域名来访问网站,这就是三者的关系。
不用域名,直接使用 IP 地址进行访问似乎也是可行的,不过可想而知,那样也太劝退用户了。
下面就分别简单介绍一下这三个东西。
## 服务器
首先是挑选一个合格的服务器,这是三者之中最贵的一个。
### 服务器的位置
服务器根据位置分为中国大陆和其他的。
中国大陆的服务器,如阿里云、华为云之类的,访问速度快,而且也比较便宜,但是最大的问题是需要进行**备案**。据说备案至少需要一个月,多则几个月,显然太缓慢了。
> 据我所知阿里云有一些学生优惠,免费体验建站的,而且后续也蛮便宜
至于其他的服务器,近的如日本、新加坡,远的如美国,到处都有。它们相对于大陆的服务器来说贵一些、延迟高一些,但好处是无需备案。
> 我本来以为海外的服务器会被墙,实际上并非如此。不干坏事的话应该没问题。
我选择的是其他服务器。
### 服务器的配置
服务器的选择有很多讲究。
一是**硬件配置**。想要带得动一个能用的动态博客,至少需要 1.5G 及以上内存。1G 内存应该是比较危险的。CPU 要求不高的样子,我的 CPU 使用率一般都很低。然后就是硬盘空间,一般而言文字类博客也用不了太多,图片的话其实可以用图床。
二是**网络配置**。主要是流量和带宽,还有一个线路问题。首先是流量,我看到过别人的个人博客,一个月总共 30G 也用了很长一段时间了,需求量其实不算很大。带宽的话,个人博客网站应该是不需要多大的,知乎上有说 1M 宽带就够了的。还有一个线路问题,这个我不是很懂,据说 cn2 线路更快。买服务器的时候可能它不会直接提到线路,但是如果有 "Asia/China Optimization" 之类的字样,应该就是 cn2 线路的。
> 目前我的网站平均占用 1G 左右内存,硬盘 5.6G。20 号建站到 23 号早晨为止,一共用了 1.4G 左右流量,大部分流量是在建站时候花费的,后面用的很少,
三是**系统**。主要是 Linux 还是 Windows 的区别,目前我所见的基本都是 Linux,所以最好对 Linux 系统有一些基本的了解,无需太深入。Linux 又分为很多发行版,新人的话推荐用 Ubuntu 20.04。
### 服务商的选择及服务器购买
以上知识了解了,我们可以开始考虑服务商了。国外的服务商我只知道两家,[DMIT](https://www.dmit.io/) 和 [vultr](https://www.vultr.com/)。前者贵一些,但是有 cn2 线路。后者未接入 cn2 线路,但是不仅便宜,而且还是按小时收费的。我选的是前者,这里简单介绍一下流程,可以跳过。
进入 [DMIT](https://www.dmit.io/) 的网站,注意右上角可以选择中文(不过是繁体)。创建账户进入客户中心,然后点击左上角的创建,选择伺服器。接下来就可以选服务器了。建议货比三家,仔细看看。注意有的是**季缴**有的是**月缴**。
选好套餐后点击右下角的继续,下一页是命名主机、设置 root 密码(root 相当于超级用户,拥有所有权限)、选择系统之类的,自己决定就好。然后就是喜闻乐见的付款环节了,结算页面的右侧有一个小框写着“Apply Promo Code”,这个是输优惠码的,如果你是在促销时候买,可能有折扣哦。
启动蓝色修改器,支付完毕后,服务器这一块暂时没什么问题了。
哦对了,查看服务器的时候,一般服务商会发给你公钥和私钥文件,注意私钥文件应该是只会出现一次的,下载后**一定要做好备份,千万别丢了**。丢了的话,不出意外就是丢失对服务器的控制权了,我不知道联系客服能不能解决问题。
## 域名
### 域名分类
作为一个互联网熟练用户,你应该已经见过不少域名后缀(学名叫顶级域名)了,像什么 `.com`、`.cn`、`.org` 乃至本站的 `.xyz`。
这些域名也是稍有不同的。
首先,搜索引擎对于不同域名的收录效率是不一样的。像是 `.com` 这种几十年的老域名,相对来说是快一些的;而`.top`、`.xyz`这些新兴域名,可能要慢一些。
其次,不同域名的价格可以差很多。不过一般来说按年租的话比服务器便宜很多。
然后就是,据说 `.cn` 需要备案(也许因为它是中国顶级域名),但是也有人说不需要,这个我不太清楚。
### 域名购买
国内的话,可以在阿里云、百度云、华为云这些地方买。
而国外呢,我所知道的有 [GoDaddy](https://godaddy.com/)、[name.com](https://www.name.com/zh-cn/)、[namesilo](https://www.namesilo.com/)、[namecheap](https://www.namecheap.com/)。
我只知道 GoDaddy 是老牌子,而 name.com 便宜些。后两个只是听说性价比不错。我个人选择的是 name.com,它的名气似乎不是很大,以至于中文互联网上没找到什么教程。我就假设你是用的 name.com 了,其他网站的操作也差不了多少。
在购买域名之前,你需要先决定好网站的地址。顶级域名就那么些,你只能从中选,但是二级域名是由你决定的,如 `cxz888.xyz`。有些域名可能已经被人注册了,这时候可能你就只能换一个了,如果你实在很想要那个域名,那就得想办法联系拥有者商量了。
决定好域名,支付完成后,别着急,域名相关的东西还有下一个呢。
> 买域名的时候,除去域名本身的费用外,还可能附加一些安全和隐私相关的内容。这部分买不买就取决于你了。不过 SSL 证书之后可以弄到免费的。
### 域名解析
域名购买好了。但是现在的问题是,这个域名和我们先前买好的服务器有任何关系吗?没有,在不同的商家买的两个东西,哪有什么关系。
接下来讲的就是把这两个东西联系起来,也就是所谓的 DNS 解析。
> 简单理解一下 DNS 解析。你的服务器有个 IP 地址,假设是 123.123.123.123,然后你有个域名 `xxx.com`。DNS 解析要做的就是,当用户在浏览器地址栏输入 `xxx.com` 时,自动让用户访问 123.123.123.123 这个服务器的网站。
购买好域名,进入后台,点进域名的界面。
> 具体操作 (name.com):右上角的用户图标下拉菜单点击 overview(概览),在下面找到自己的域名,如 `cxz888.xyz`,点进去。
> 另外,name.com 的最下方是可以选择语言的。
差不多是下面这样一个界面。
![name.com 示意](/images/name_com_1.png)
点击上图框红的 "Manage DNS Records"(管理 DNS 记录)。可以看到下面的界面。
![管理 DNS 记录](/images/name_com_manage_dns.png)
"HOST"(主机)就是你的网站地址,加不加 `www` 无所谓。而 "ANSWER"(回答)就写服务器的 IP 地址(可以在服务器商那里看到)。填好之后添加记录,OK,目前关于域名要做的就这么多。
## 网站系统
网站系统,或者在我们这里更具体一些,博客系统。它控制网站的界面展示,用户和网站的交互,网站数据的存取等。
### 网站系统的选取
本站(之前)用的网站系统是 WordPress。
还有一个常用的是 typecho。我只听说过,下述对比也只是综合我所看到的评价。
> 相对而言 WordPress 的功能更丰富,不过没有原生 markdown 支持。typecho 定位是纯粹的个人博客系统,而非 wordpress 这样的 CMS,所以相对来说更简洁一些。如果服务器配置不够,也许可以试试 typecho。
> 此外,推广一波 TriNitroTofu 大佬自己写的博客系统,[December](https://github.com/trinitrotofu/December)
我们这里选用 wordpress,不过在此之前还需要先对服务器进行一些操作,让它更好用一些。
### 连接服务器以及宝塔 Linux 面板的使用
购买好服务器之后,除了得到一个光秃秃的 IP 地址和后台的一些资源使用情况,我们所能做的最多其实也就是开机、关机、重启之类的。
所以需要想办法先连接上服务器,我们采用 SSH 连接的方式。
Windows 下需要用到一个叫做 PuTTY 的软件。这是[官网下载地址](https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html)。
![PuTTY 示例一](/images/PuTTY_example_1.png)
![PuTTY 示例二](/images/PuTTY_example_2.png)
启动后,在上面的红框 1 中输入服务器的 IP 地址,然后在左侧找到红框 2 中的 `Auth`(依次点击 `Connection->SSH->Auth`)。
然后点击红框 3 中,找到之前保存的服务商给你的服务器的私钥文件。
接着就可以点击 `open` 进行连接。
> PuTTY 似乎不会默认为你记住当前的配置,你下一次打开还需要再输一遍 IP,再选一遍私钥。解决方法是在首页 `Session` 那里的 `Saved Sessions` 给当前会话取个名,然后点右边的 `save` 保存,下次就可以双击会话名,或者点击 `load` 后再打开了。
打开后就是一个命令行界面。它询问 `login as`,输入 `root` 回车即可。现在你就正式登录到服务器上了,你可以在命令行中通过命令操作服务器里的系统。
接下来安装宝塔 Linux 面板。
> Linux 面板用于提供一个方便的界面,以可视化地管理服务器。宝塔面板还有很多关于网站维护的工具,非常好用。
在命令行中输入 `wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh`。
等到服务器处理完之后,注意它应该会输出一些内容,像是外网面板地址、内网面板地址、初始默认用户密码之类的。将面板地址复制到浏览器打开(哪个能用用哪个),输入命令行里提供的用户名和密码。然后就能看到一个面板页面。
> 如果不慎关闭了命令行也没关系。重新打开命令行,在其中输入 `bt` 命令,会有中文的提示指引,输入编号选择查看默认信息即可。
第一次进入面板,它应该会提示你安装一堆东西,像什么 Apache、mysql、php 之类的。根据 WordPress 的建议,mysql 版本最好选用 5.6+,php 版本最好选用 7.4(之后再更新也是可以的)。安装这些会花很长一段时间,慢慢等待即可。
然后需要将你的网站添加到宝塔面板上,在面板的左侧的“网站”里添加网站即可。记得 FTP、数据库都选创建,PHP 版本选到 7.4 及以上即可。这一步比较简单,不再赘述。
> 另外,在这一个界面上可以给网站配置 SSL 证书,最好打开强制 HTTPS。另外建议把面板的 SSL 也开了,在面板的设置里面就有。不过开了之后浏览器可能反而告诉你站点不安全,甚至有可能拦截你。我们不管它就好。
### wordpress 的安装
这个参考这篇教程即可,写得很详细了。
## 总结
完成上面这些步骤,就可以在浏览器里通过域名访问网页了。你将会看到 wordpress 默认主题下的首页。
撒花庆祝ヾ(≧▽≦\*)o。
如果有什么疑问的话请在评论说明,我会尽我所能解答的。
> 版权声明:本文采用 [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/) 进行许可,转载请注明出处。
>
> 本文链接:[https://cxz888.xyz/posts/blog_site_note_1/](https://cxz888.xyz/posts/blog_site_note_1/)
---
> 作者:
> URL: http://cxz888.xyz/posts/tech/blog_site_note_1/