搭建个人博客方法

0 引言

博客最初的名称是Weblog,由web和log两个单词组成,意为“网络日记”,后被人分为we blog,Blog由此而来。一个Blog其实就是一个网页,它通常是由简短且经常更新的帖子所构成,这些张贴的文章都按照年份和日期倒序排列。个人构想到日记、照片、诗歌、散文,甚至科幻小说的发表或张贴都有。许多Blogs是个人心中所想之事情的发表,其它Blogs则是一群人基于某个特定主题或共同利益领域的集体创作。博客永远是共享与分享精神的体现。按照存在方式,博客基本可以分为三种:托管博客、独立博客、附属博客1。其中独立博客要求较高,有要自己的域名、空间、和页面风格。相对于其它两种博客建设难度较大一点。本文从基本入手,说明建站的基本方法,最后选择LAMPW(Linux+Apache+Mysql+Php+Wordpress)为范例,搭建出一个可用的个人独立博客站点。

1 独立博客与LAMPW

1.1 独立博客的优缺点

即是在域名、空间、内容上独立自主的博客,它与免费博客相比,更自由、更灵活、更强大、更有价值。主要体现在下面几个方面2

  • 写作自由。自己的博客自已作主,不用担心说错了什么而被别人删除博文。
  • 打造品牌。博客可以说自己打品牌的一个平台,特别是现在自媒体越来越火的情况下,你利用博客打品牌是再合适不过的了。
  • 交友平台。很多志同道合的人通过评论互动,通过博客可以认识到兴趣相同的人,从而积累人脉。
  • 学习技术。搭建博客的过程,就是实践的过程,可以从中获得网站相关知识。
  • 投资很小。个人博客前期的配置很低,一个月几十块钱就足以满足要求。

不过相对的,独立博客同样存在一些问题,如稳定性不够,花费时间和精力等3。然而对于喜欢网络和写作的人来说,独立博客将是优秀的平台。

1.2 建站的准备

一般来说,建立一个完整的站点需要下面几点要求:

  • 服务器。所有建站程序的存放点,是最本的要求。
  • Web框架。即运行在服务器上的Web软件及其组合,与服务器共同组事web服务器,提供网上信息浏览服务。
  • 内容管理系统(CMS)。运行在web服务器上进行可视化管理数据的协作环境4

服务器
服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。服务器主要分为传统本地服务器和云服务器。云服务器又可称VPS服务器(Virtual Private Server),,利用虚拟服务软件,在一台物理服务器上创建多个相互隔离的小服务器。VPS的运行和管理和独立服务器完全相同。与传统服务器相比,云服务器更为灵活,对于个人用户,是首要的选择对象。

Web框架
实际上就是指搭建动态网站或者服务器的计算机软件。目前比较常用的主要J2EE和.Net商业软件以及开源软件组LAMP(LNMP)。网站站的流量上来说,LAMP是最强大的网站解决方案,其占用70%以上的访问流量。

CMS
对于内容管理,业界还没有统一的定义。但是一般认为内容管理系统是一种位于WEB前端(Web 服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。国内用的比较多的有MicroDreamWCM、Active Context、turbocms、cms4i,不过这些都是纯商业性系统,价格很高,一般个人建站,会选取一些国内外比较有名的开源系统,比较出名的有Drupal、CoreThink、Joomla、WordPress,Tikiwiki、PhpNuke、 PostNuke、Xoops、Tikipro。

1.3 LAMPW

Linux+Apache+Mysql/MariaDB+PHP一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。

  • Linux,开源免费的操作系统。
  • Apache,Web服务器软件,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中5
  • Mysql/MariaDB,数据库管理系统。
  • PHP,编程语言,具有web开发的能力。
  • WordPress,一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。

2 独立博客建站选择

独立博客要考虑到经济性和易用性。其中LAMPW的组合是开源免费的,而服务的选择最好采用VPS,最低配置的价格也是比较合理的。

2.1 VPS的选择

市场上VPS商家主要有Xen、OpenVZ、KVM三种虚拟化技术。其中Xen是半虚拟化技术,优势是保证了内存独占。OpenVZ是操作系统级别的虚拟化拟术,性价比较高,但是由于共享特性,比较不方便。而KVM则是完全虚拟化技术,可安装任意的操作系统。目前人们比较倾向于Xen,因为它是对供应商和和客户来说都是可以接受的折衷方案。Openvz成本较高,对于服务商及客户都极为不利,而kvmKVM是新兴的虚拟化项目,是是全虚拟化,需要cpu虚拟化指令支持,因此,出售KVM的VPS商家不多,且技术支持和售后服务上也比不上xen的vps主机那么成熟。

2.2 Linux版本的选择

Linux最早由Linus Benedict Torvalds在1991年开始编写。在不断的有杰出的程序员和开发者加入到GNU组织中后,便造就了今天我们所看到的Linux。Linux的发行版本大体可以分为两类,一类是商业公司维护的发行版本,以著名的Redhat(RHEL)为代表;一类是社区组织维护的发行版本,以Debian为代表。

2.2.1 Redhat系列

Redhat,应称为Redhat系列,包括RHEL(Redhat Enterprise Linux,为收费版本)、Fedora Core(由Redhat桌面版本发展而来,免费)、CentOS(RHEL的社区克隆版本,免费)。Redhat可以说是在国内使用最多的Linux版本,甚至有人将Redhat等同于Linux。这个版本的特点就是使用人数多,资源多,而且网上的许多Linux教程也都以Redhat为例进行讲解。
Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分发方式是编译好的二进制文件。稳定性方面RHEL和CentOS的稳定性非常好,适合于服务器使用,但是Fedora Core的稳定性较差,最好只用于桌面应用。

2.2.2 Debian系列

Debian,或者称Debian系列,包括Debian和Ubuntu等。Debian是社区类Linux的典范,也最遵循GNU规范。Debian分为三个分支: stable, testing和unstable。其中,unstable为最新的测试版本,有相对较多的bug,适合桌面用户。testing的版本都经过测试,相对较为稳定。而stable一般只用于服务器,软件包大都比较过时,但是稳定和安全性都很高。Debian最具特色的是apt-get/dpkg包管理方式6

很多情况下,Linux的发行版的选择并不取决于自己。对于选择VPS或云服务器中,供应商一般只提供可行的Linux发行版。一般来说,Debian、ubuntu、CentOS都是个人站长的比较好的选择,使用的人较多,解决方案比较容易寻找。由于内存较小,一般采用32位的操作系统。

2.3 apache与nginx

首先我们来谈谈老朋友Apache,Apache HTTP Server(简称Apache)是世界使用排名第一的Web服务器软件,音译为阿帕奇,是Apache软件基金会的一个开放源码Web服务器,可以运行几乎所有的计算机平台,其次开放的API接口,任何组织和个人都可以在它上面扩展和增加各种需要功能,达到为自己量身定制的功能。再次是因为老,所有相关文档很齐全,甚至在windows平台很多爱好者都为它开发了各种图形界面,连菜鸟也能入手Apache。因为如此它迅速占领了70%的web服务器市场。
Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的。其次它和Apache一样是开源的,BSD-like 协议下发行。它最强劲也最具有竞争性为其高性能和反向代理,这两项在该领域独领风骚7

一般来Apache有如下特点8:

  • apache 的 rewrite 和动态处理方面具有优势
  • apache 出现较早,发展成熟可靠,bug少,模块多,较稳定,市场占有率高
  • apache 对PHP支持较好
  • apache 相对占用资源较大
  • apache 同步多进程,一个连接对应一个进程

而Nginx则具有下面特点:

  • nginx 抗并发,处理静态文本方面具有优势
  • nginx 配置简洁,但是稳定度不如apache
  • 轻量级,采用了C编写,同样的web服务,nginx占用资源会少很多
  • nginx 采用异步模型,多个连(万级别)接对应同一进程。

尽管nginx正在一步步取代Apache,市场份额也在不断增加,还是需要从如下几个方面作为出发点来选择适合自身的web服务器。

  • 网站并发。如果是中小型网站,建议采用apache,而于对于大型并发网站,那么Nginx将不错的选择。
  • 如果需要用到大量的重写模块,建议选用Apache,
  • 系统资源有限的情况下,建议采用Nginx。

对于个人建站来说,由于系统资源有限,采用Nginx为更好的选择。

3 建站范例

接下来为使用LAMPW组合来完成个人博客的实例9

3.1 建站准备

在本次示例中,首先得需要一个VPS。VPS本次选择DigitOcean,选择的内存大小为512MB,目前的价格为$5(约合33元)每月。DigitOcean采用的是Xen虚拟化技术,所以内存和硬盘容量都是独占的,保证了稳定性。
下面为鄙人的推广链接,通过该注册使用后会直接赠送$10,当然鄙人也会有一定的好处。

https://m.do.co/c/d42a96460a3e

由于是示范性的建站过程,故配置过程基本上均采用默认配置,以保证顺利快速安装。最快的安装的方式是采用LAMP安装包,基本上直接就配置好了,但是作为个人站长,需要个人维护,采用这种快速安装的方式来入门并不妥当。

然后在VPS上建立主机,系统选择Ubuntu或者是Debian(本次教程不采用CentOS),选择好容量之后,进入终端即可。进入终端方式可采用ssh远程连接(本次指linux下,当然也可以采用其它的ssh客户端):

ssh root@0.0.0.0(VPS的IP)

或者直接用网页的客户端(如图1所示),输入用户名(一般默认的均为root)和密码(首次的密码会自动生成并通过邮件发送,会比较复杂)即可。

122.1

成功进入系统之后,要更新一下源。

apt-get update

3.2 LAMP系统环境配置

下面就是安装步骤,可根据提示操作,如果问是否继续就是选择是(’y’或者’yes’),如果出错误,则按照提示或搜索错误关键字进行修复,一般来说,操作正确的话,是不会出现错误的。

  1. 安装apache2、mysql、php。
apt-get install apache2
apt-get install mysql-server
apt-get install php5

在上面安装过程中,mysql-server中间需要填入密码,而ubuntu14.04选择为php5,而ubuntu 16.04采用的是php7.0,其它的发行版本依据其源中php版本进行选择。版本虽有所不本,但是配置方面没有太大的变化。
2. 安装apache2的php模块和php的mysql模块。

apt-get install libapache2-mod-php
apt-get install php-mysql

这两个模块是用以支持和连接这些工具,缺少了,它们就无法协同工作。

到此,LAMP系统环境基本配置完毕。

3.3 WordPress配置

1.下载并解压wordpress,可以采用本地下载再上传的方式来安装,但是最为方便的做法还是直接采用wget直接下载到服务器。

wget https://cn.wordpress.org/https://cn.wordpress.org/wordpress-4.5.3-zh_CN.tar.gz
tar -zxvf ./wordpress-4.5.3-zh_CN.tar.gz

在上面的过程中下载的是为tar.gz的压缩包,故采用了tar的解压方式,这是linux下用得较多的压缩包,如果选择了zip的压缩包,那么就得采用unzip的解压方式,不过有些时间upzip发行版中并不提供,故还需要手动安装。

2.将wordpress移动到常用的文件夹下。

cp -r ./wordpress/* /var/www/
chmod -R 775 /var/wwww

/var/www/是比较常用的wordpress放置位置,这个位置在之后配置会被指定。而chmod命令是更改该文件夹及下面数据的权限问题,使得该文件夹的数据可被访问。至于文件权限应该怎样去选择,本文不再详述,不过为了何保证能够正常的安装的使用,可以将权限提高。

3.建立wordpress的数据库

mysql -u root -p
mysql> create database wordpress;
mysql> exit

第一个命令是为root(mysql用户名)登入mysql,需要之前填入的密码。后面两行为mysql中的操作,故存在mysql的前辍,但是不用输入。在mysql中添加名字为wordpress的数据库即可(数据库名称并不重要)。

4.更改apache2配置,将apache2的默认网站位置指wordpress根目录位置:

vim  /etc/apache2/sites-available/000-default.conf

找到”Document /var/www/html”该行,并将其改为”Document /var/www”即可。
/var/www是为wordpress的根目录(之前移动后的位置)。修改完成之后保存退出即可。如果对于vim操作不熟悉的话,也可使用nano编译器来完成,方法同上,只是用nano来代替vim即可,最后使用Ctrl+x保存退出。
配置修改完成之后,重启一下apache2服务即可让配置生效:

service apache2 restart

5.访问网址,建立wordpress与mysql的关系。
打开浏览器,直接输入vps的ip,点击下一步得到得wordpress的配置面。
对于数据库配置中,填入数据库名(之前新建的数据库名,wordpress),用户名(mysql的用户,为root),密码(mysql的密码)等。提交之后就进入到wordpres页面设置。填入站点标题(自定义,一般指站点的主题或属性,如“XX的个人博客”),用户名(该网站的管理员用户名,自定义),密码(管理员的密码),电子邮件(用于激活worldpress的电子邮箱)。
配置完成之后,安装wordpress即可。
该步骤主要都在网页界面下完成,上手简单。

3.4 安全性配置

个人博客网站也会遭到别人的攻击,而VPS的根密码也可能会遭到暴力破解。保护自己的VPS及其中的网站的内容也是非常重要的一个方面。做好备份是一件很重要的事,0vps运营商一般会提供备份镜像服务,所以定时备份是必须的。

参考文献

此条目发表在网络建站分类目录。将固定链接加入收藏夹。

发表评论

电子邮件地址不会被公开。