不只是Blog——VPS搭建WordPress记录

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.co和blog.konata.co都指向了我购买的VPS hosting的main IP。

这里需要注意,DNS更改需要一定时间,不会立刻生效,让我们先做下一步。

WordPress

安装

在大家的强烈建议下决定用docker安装:https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-docker-compose 。严谨(胆小)的我选择了新建一个专门的用户来做这件事情。这个教程写得太完备了以至于我非常顺利就完成了。遇到的小问题是PHP版本比较老等我有空研究一下怎么升级。

发布

先把主题和插件装好,个人推荐blocksy主题,可定制的内容非常多。

推荐插件:

  • WP Githuber MD,支持Markdown,谁用谁知道。
  • Site Kit by Google,基于Google Analytics的流量统计,建议登陆: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根本没人理我。

4 评论

  1. 啊,是 Docker 安裝的哇… 偷懶偷懶… 有server之後推薦多跑幾個好玩的service來推薦推薦哇!我現在就一個 Trilium…

    • 会的会的~以后好玩的都会记录下来,除了长毛象还想试试nexcloud,不过近期内应该是先把旧文搬到博客这边~

  2. 向博主强烈推荐 Jetpack 插件,搭配 WordPress 的官方应用,一站式订阅评论,用户体验极佳 ୧( “̮ )୨✧︎

留下评论