基于宝塔面板(bt)+ 阿里云ECS + WordPress 搭建个人主页(以独立博客为例)
以前总是说独立建站独立建站,但始终没有行动。这两天有空,就填上这个坑吧~
先来说说什么是宝塔面板。宝塔面板就是一个主机管理系统,它可以帮助你快速用脚本安装网站依赖、FTP、数据库等一系列基本插件,让你无需从头配置一遍各种依赖。
阿里云ECS就是一台主机,可以理解为在公共机房里租了一台Linux服务器,然后有一个IPV4地址对应,然后这台机器有一个固定的带宽可以上传下传,简单地说就是一台远程主机可供访问和操作。
WordPress是一个搭建博客的平台,依托在ECS的网站根目录下面(也就是一个Linux的文件系统),用这个工具可以快速搭建独立博客的基本框架,相当于直接精装到位,剩下的就是怎么摆家具和住人的问题了。
这篇文章就是一个如何建立一个独立博客(基于一台独立主机、独立域名)的教程。
1.环境搭建
1.1 购买主机和域名
关于环境搭建,主要就是购买一台ECS主机(主机自带IP)+购买一个域名,然后绑定域名到主机IP。
具体可以参考这个教程,写的很详细
如果买国外节点的话,就不需要域名备案这个环节了。后面宝塔面板的配置可以参考后面的教程。
购买完以后,你可以进入阿里云官网,然后登陆右上角的控制台(这个控制台一开始使用的时候会觉得设计很反人类,因为太复杂了),然后需要查看公网ip、设置root密码等操作,这部分知识就google把。
基本界面是这样的:
然后你可以打开Terminal,或者Windows下的Xshell,在命令行模式下用ssh登录你的主机:
$ ssh root@your_ecs_ip_address
就可以在命令行下操作你的主机了,我个人比较偏好Ubuntu16.04系列的。
1.2 域名绑定到主机
域名绑定到主机的意思,就是当你在网页上输入你购买的域名时,浏览器可以指向你的主机IP。
和教材不同的是,我在Godaddy上购买了域名。购买国内渠道的主机和域名需要备案,我觉得不符合互联网精神,所以我买了阿里云美国节点的服务器。
首先你要去这里注册账号并且购买域名,具体方法就不详述了,可以google。
然后就是绑定域名到你的阿里云主机,可以参考这个教程。Godaddy现在改版过了,网上很多教程不再完全适用,但是主体思路还是一样的。
我在域名管理界面下将A(Hosts)关于指向Godaddy服务器的条目给删除了,不清楚这一步是不是必须。
绑定域名和IP后需要一段时间才能生效,大概是十几分钟到半个小时不等。
1.3 安装宝塔面板
安装宝塔面板的方法比较容易,先进入主机的命令行模式,然后执行脚本。脚本的方法在官网上有说明,注意看完整个教程,需要开放8888端口并且执行特定的脚本。
在命令行下安装完成后,进入浏览器打开你的主机:
http://your_ecs_ip_address:8888
就可以进入宝塔界面了,一开始还要安装依赖,包括apache、ftp、sql什么的。LNMP方案和LAMP方案我都选择过,似乎并没有什么区别。一开始的教程里推荐LAMP方案。
大概经过半个小时的安装,宝塔面板就安装完成了,现在你可以使用宝塔面板开启FTP服务玩耍一下了。
具体怎么玩?开启一个FTP账户,然后它会在主机下建立一个文件。命令行进入那个文件,然后使用
$ wget download_url
就可以下载这个链接地址,然后进入浏览器:
ftp:your_ip_address:port
就可以看到你下载的内容,并且下载它了。
2.配置WordPress
2.1 简单的说明
下面接着干正事。现在我们已经有了一台远程Linux主机、一个绑定主机的域名,然后主机上使用宝塔面板快速搭建了一个PHP、FTP、数据库依赖环境,需要的基本环境已经配齐。
然后我先来说说原理。初入门的朋友可能会发现,网上有一大堆关于怎么建站、建博客的教程,但是大多数只是涉及细节,而且方法也是多种多样,很容易让新手迷失其中。其实这类文章缺少一个整体的总结,也就是这么做是为了什么目的而做。
首先,你的博客,也就是一个网站,实际上就是一个文件系统,这个文件系统依托于一个操作系统(例如一个Linux操作系统),而操作系统,依托于一台主机(可以是PC机,也可以是服务器,也可以是一个树莓派)。
第二,这个主机必须接入互联网,否则别人就找不到、访问不了你,因此你需要一个互联网的门牌号:IP地址。并且需要将这台主机连接进入互联网。显然这个主机可以是你自己已经联网的笔记本电脑,但是它存在两个问题:
你的博客需要7*24能够被别人访问,而笔记本一旦关机,别人就访问不了了。而且你的网络也不能保证全天候顺畅。你的电脑可能并不拥有一个公网IP,它可能是先连接到一台路由器,然后再连到小区里的路由器,一级一级连到网络运营商,也可能是很多台电脑共享一个公网IP。互联网上的其它电脑可能根本找不到你这台电脑。
这也就是为什么我们需要购买一台云主机(ECS)。云主机可以这样理解:一台放在公共网络机房的电脑。这台电脑绑定了一个你私有的IP地址,它7*24运行,并且有可靠的网络连接(包括上行和下行)。
第三,现在假设你有了云主机,但别人还是不能通过浏览器访问到你的博客,因为IP地址只是访问你云主机的地址,在浏览器中还需要一个域名和你的云主机中博客的文件系统挂钩才行。
这样我们就需要注册一个域名,然后将域名和IP地址绑定,然后连接到你博客(也就是一个文件系统)中去,这也就是为什么我们还需要购买一个域名。
第四,这个所谓的“博客”,也就是一个文件系统,需要一定的依赖环境(更底层的文件系统)。例如,你的博文放在哪儿?你的博客页面放在哪儿?评论放在哪儿?管理者和评论的权限管理放在哪儿?
因此我们还需要对云主机里的软件做一次配置,也就是配置宝塔面板(这样的面板还有很多,宝塔只是其中之一,当然你也可以自己手动配置)。这就像是一个金字塔,一层一层地堆积起来。在顶层,你看到的是一个博客网站。
这样梳理一下就清楚了:
Linux系统(更加底层的文件系统)-> PHP文件系统(建网站用的)、FTP文件系统(上传下载文件用的)、SQL(存储数据用的) -> WordPress(搭建博客用的高级文件系统)
而它们的载体就是:
ECS云主机 -> 宝塔面板 -> 你的独立博客网站
这样应该就解释清楚了吧?
—————-分割线—————-
下面开始配置WordPress:
还是主要参考之前的教程,教程里面使用了中文版的wordpress,我尝试后发现问题很多,还是推荐英文官方原版的。
先跟着教程,在宝塔面板下新建一个网站,域名就是你注册的域名。
然后用ssh登录云主机:
然后进入网站的根目录:
然后去wordpress官网右侧Download复制一下下载链接,然后:
$ wget /latest.zip$ unzip latest.zip
就是将wordpress这个文件系统下载到网站根目录,然后解压缩,会得到一个wordpress的目录
然后赋予它权限:
$ chmod -R 777 wordpress/
给权限的原因是后面wordpress配置的时候可能会出现无法写入的问题。这个操作不是非常推荐,因为给的权限太高了,但是我技术比较差……
如果域名绑定正确的话,在浏览器输入你的域名就会看到一个首页地址,如果输入:
your_domain/wordpress
就可以进入wordpress配置页面。你看,这就是一个文件系统。再后面就按照教程一步一步地配置吧,没有什么难度。
2.2 补充说明,安装markdown插件
由于我比较喜欢markdown语法,wordpress默认不带markdown输入功能,需要安装一个叫WP EDITOR.MD的插件。顺便就来说说我如何安装wordpress插件。
这是WP EDITOR.MD的项目主页
wordpress控制台可以直接安装插件,但是我装的时候出现了安装失败,所以还是用命令行的方式安装。
先进到插件的页面,复制下载链接。
然后在主机命令行下,进入安装插件的目录:
然后在这里下载插件:
$ wget /plugin/wp-editormd.2.5.zip
再解压缩。
之后进入wordpress管理界面
此时控制台会发现你安装的插件,激活你想要的插件就可以了,然后写新文章的时候就会自动载入这个Markdown编辑器。
从wordpress中文版主页上下载的wordpress无法加载这个插件,所以我放弃中文版本了。
2.3 从顶级域名访问博客
全部配置完以后你会发现,如果直接访问顶级域名,会先进入一个主页面。如果要访问你的博客,还需要进入:
http://your_domain/wordpress
这样感觉就不像是一个“独立博客”了,因此我们还需要设置从顶级域名直接进入博客。
参考教程在这里
原理很简单:当你进入www.your_domain
的时候,它会首先访问index.html
文件,因此会呈现出一个首页。而当你进入www.your_domain/wordpress
的时候,它会首先访问index.php
,也就是博客的首页,因此我们只需要移动一下index.php
并且修改里面的路径就可以了。
3.小节
其实也没什么好总结的,就是你玩得开心就好~
———–8月14日的更新————
4. 对于出现问题的补充
最近有时间过来装修我的博客了,然而发现了一个问题:当我发布一篇博文以后,居然点击评论会出现页面“NOT FOUND”,或者点击某篇博文导航链接后,也是如此,真是醉了。
我先推测是不是中文地址无法解析的问题,于是研究如何让wordpress支持中文。(这里提一个插曲,最早的教程是基于提供的中文安装包安装的,但是,它没有办法兼容markdown编辑器,因此放弃)
要安装中文语言包,可以先参考这个教程和官方说明
主要思路就是修改wp-config.php,如果没有这个字段,就自己添加一下。然后需要做的是:去Dashboard-Setting-General,将Language调成中文(我是先修改了wp-config.php的文件后,这里就跳出来中文了)。
然后再去Dashboard-Updates里面点击更新(过一会儿就会出现更新中文语言包的提示)
会出现提示:
这个主机名(hostname)之前的博文忘记提了,使用localhost就好(连我自己也忘记了,查了好半天)。FTP用户名与密码还记得吗?去宝塔面板里面找(your_host_ip:8888)。
然后就等待更新就可以了,然后界面就变成中文的了。可是问题依旧(算是学会了一个新技能)。
然后我继续研究,发现问题可能是出在固定链接上。你可以发现,wordpress在点击博文链接的时候,会引导浏览器url打开一个很有规律的链接,拿我这个站点来说:www.hawkuu-space.info//08/博文的title,然而linux文件系统中并不存在这个文件,可能这就是问题所在(我想wordpress可能会将这个链接进一步翻译为博文真实存放的地址,只是这个中间出现了bug)
最后找到了这个解决方案,主要方法就是控制台-设置-固定链接里面,设置为“朴素”,问题就解决了,评论可以访问了,文章导航也能访问了,这次补充到此为止,希望你玩的开心~
如果觉得《基于宝塔面板(bt)+ 阿里云ECS + WordPress 搭建个人主页(以独立博客为例)》对你有帮助,请点赞、收藏,并留下你的观点哦!