2021年1月15日更新:你究竟需要什么样的博客方案
按照惯例,博客的第一篇文章写如何创建博客再适合不过了。那么就先把我悲惨的博客建站路程分享给大家,让大家开心一下!
本来我一开始是想搭建wordpress的,不过在看教程的时候,在买域名那一步被bluehost截胡,买了它家的wordpress搭建套餐。后来被指出并不是VPS hosting,在使用上有很大的限制,绕了点远路。所以这次打算好好记录一下我在建站过程中遇到的一些弯路。
从主机开始
无论搭建wordpress还是mastodon,你都需要一个24小时不断运行的服务器,另外为了可以让大家方便访问,你还需要一个域名。我把主机放在第一步是因为,很多wordpress教程都从买域名开始,于是我在不了解很多基础知识的情况下就这么被bluehost截胡了。
Why VPS
我在bluehost买的这个叫shared hosting,和VPS hosting的区别见:https://www.vpszh.com/325 。
简单说来就是VPS是和其他用户完全独立出来的虚拟主机,你可以完全拥有root权限做你想做的任何事情,而且也不会被其他人影响。不过其实bluehost的wordpress套餐对于只打算用wordpress的人来说其实也挺省事的,如果需要是可以买。用bluehost的wordpress套餐建站可以参考:https://www.wpbeginner.com/start-a-wordpress-blog/ (就是它把我带到沟里去的,等我搬好家就退款,哼!)
关于VPS还可以做什么的讨论:
https://pullopen.xyz/@flyover/105503489528395619
购买VPS hosting
这里我选择的是hostwinds的Unmanaged VPS,参考教程是:https://www.vps234.com/hostwinds-purchase-tutorial/。
虽然DigitalOcean有一键安装wordpress和mastodon的功能,但是在长毛象上询问了大家的意见后决定还是不要偷懒,自己部署,所以选择了据说网速更快的hostwinds。另外,嘟站用的Kimsufi据Salt老师说便宜大碗,大家也可以考虑,vultr和cloudcone也很多人用的样子。
连接VPS
按照教程购买成功以后,会收到一个Email,里面有类似这样的信息:
Cloud Package:
Hostname:
Main IP:
Secondary IPs:
Username: root
Password:
SSH Port: 22
其中Main IP,Username,Password和SSH Port就是连接服务器要用的。连接SSH可以使用Putty不过我依照个人习惯用了MobaXterm。连上以后就可以在你自己的VPS上胡作非为啦!
这里建议可以改一下密码,参考教程:https://www.vps234.com/usa-vps-hostwinds-tutorials-after-purchase/。改完密码以后稍等一会儿再用新密码登陆,记得重启(遇事不决重启试试)。
简单的putty使用说明:
Host Name那边写上邮件中的Main IP(也就是我们主机的IP地址),然后点open,会出现一个黑色框框,显示“login as:”,这边是要你写上你的用户名和密码。第一次登陆,用户名是root,之后如果你新建了其他用户,也可以在这个界面输入其他用户名。输入root后回车,继续输入密码再回车(输入密码不会出现字符或者******,输完回车就行啦),就连接上啦!
VPS基本设置
这里主要参考这个教程:https://www.vpsdp.net/beginners-guide-of-vps/
虽然上文建议装centOS 6,但象友们强烈推荐Ubuntu/Debian,于是我换成了最新版的Ubuntu。
虽然文中建议新手直接用root操作,但我因为有一定的linux基础还是给自己新建了一个账号并且给了sudo权限,不知道这步是干嘛的可以跳过,学好rm -rf的正确用法即可——那就是不要用(尽量啦)。
useradd username -m
usermod -s /bin/bash username
passwd username
chmod u+w /etc/sudoers
# 在/etc/sudoers的root ALL=(ALL:ALL) ALL后面添加username ALL=(ALL:ALL) ALL
chmod u-w /etc/sudoers
到此为止可以尝试一些基础的linux操作练习,弄错了也没有关系,一键重装没有任何损失。
域名
建站的时候一定要提前想好域名,否则后果很严重——你会在电脑前发呆很久很久!
域名购买
这个我由于之前买了套餐,送了个域名,退款不退域名,所以跳过了,大家可以参考其他人的教程购买。常用的有godaddy、bluehost、namecheap等。
这里补充一点就是,一般来说域名会有个隐私服务是另外付钱的,是用来保护你的注册信息的。如果不想花这个钱就不要把个人信息如实填写到注册信息上即可。
域名解析
域名解析是集齐域名和主机以后要做的事情:把它们关联起来。回到最初的问题,为什么我们需要买域名?每个主机都有一个专属的ip地址,类似于在地球上的经纬度,可以唯一确认这台主机的位置。但是这种经纬度太不适合人类大脑记忆了(人类不行)。所以通常来说会给这些地方取一些人类可以更容易记忆的名字。例如google.com(域名),就比112.342.093.12(IP地址)更容易记忆。把域名和IP地址之间的映射关系记录下来,以便于访问域名时找到对应的IP地址并访问,就是域名系统DNS(Domain Name System)负责的事情了,而这一过程被称为域名解析。
具体做法来说,就是打开购买域名的网址,登陆后找到DNS设置的地方。这边会出现两种设置,A和CNAME,这两者的大致区别是:A记录是直接将域名指向某个IP,如果你的主机IP不常变动就建议使用A记录。而别名解析是先将域名解析到主机别名再转跳到IP,这样主机IP改变了不用重新解析。如果主机IP常变建议用别名解析。
对于搜索引擎来说,A记录更正式一些,所以我采用了A记录的方式,把我的konata.vip和blog.konata.vip都指向了我购买的VPS hosting的main IP。
这里需要注意,DNS更改需要一定时间,不会立刻生效,让我们先做下一步。
Cloudflare
Cloudflare 可以用来加速站点访问速度、保护站点等。虽然是可选项但是实在是太容易设置了,直接注册后顺着引导即可完成,强烈推荐设置一下(可随时关闭)。
WordPress
安装
在大家的强烈建议下决定用docker安装:How To Install WordPress With Docker Compose 。严谨(胆小)的我选择了新建一个专门的用户来做这件事情。这个教程写得太完备了以至于我非常顺利就完成了。遇到的小问题是PHP版本比较老等我有空研究一下怎么升级。(一年后补了一个教程的笔记: WordPress建站笔记 )
之前的docker安装方案有较大问题,请参考最新文章:WordPress一站迁移+重新部署
发布
先把主题和插件装好,个人推荐blocksy主题,可定制的内容非常多。
推荐插件:
- WP Githuber MD,支持Markdown,谁用谁知道。
- Site Kit by Google,基于Google Analytics的流量统计,建议登陆:https://www.google.com/analytics/ 查看更详细的统计结果。
- UpdraftPlus WordPress 备份插件,新手引导很清晰,可以和google drive等账号关联。
象友们都会心动的,在博文中嵌入嘟嘟的方式:
方法和效果如上,还可以在width="400"后面增加height="250" 来控制高度。
这部分越写越多于是我干脆重新开了一篇记录我的博客装修内容,有兴趣的可以跳转到这篇查看:我的wordpress个性化定制记录 。
What's next?
VPS能做的不限于此,这也是它激动人心的点。我的下一步计划是建立一个长毛象(or misskey)实例,到时候也会分享我的建站过程。不过在这之前我先去把bluehost的shared hosting给退了XD
希望大家用不上的bluehost退款教程:
一句话概括就是找网页右上角的live-chat,直接和人工客服沟通退款。我之前试过发ticket根本没人理我。
啊,是 Docker 安裝的哇… 偷懶偷懶… 有server之後推薦多跑幾個好玩的service來推薦推薦哇!我現在就一個 Trilium…
会的会的~以后好玩的都会记录下来,除了长毛象还想试试nexcloud,不过近期内应该是先把旧文搬到博客这边~
向博主强烈推荐 Jetpack 插件,搭配 WordPress 的官方应用,一站式订阅评论,用户体验极佳 ୧( “̮ )୨✧︎
最近比较忙都没有折腾插件了,晚点有空试试看,感谢推荐~