StarryCat
Astronomy
喵喵的灿烂星空

VPS+LNMP+WordPress搭建属于自己的博客【Vultr实测记录】

曾经十分羡慕网上一些博客站主们,他们的博客网站有着漂亮界面,发布着自己感想内容。与空间和贴吧不同,这些博客自由度更高,定制性更强,想着什么时候自己也能拥有一个这样的博客。终于在去年(2017年)年底自己购买了一台VPS服务器,搭建一个属于自己的博客也提上日程了,最后在今年(2018年)一月中下旬搭建成功。本文将记录搭建博客的过程,如果你也希望在网络上拥有一个自己的领地,希望这些能帮助到你。


购买服务器和域名

我们的博客内容是存放在远端服务器的,人们可以通过浏览器输入你的网站地址(如:https://starrycat.me)来访问你的博客。所以我们需要购买一台服务器,你可以选择虚拟主机(Virtual Hosting)或虚拟专用服务器(Virtual Private Server,简写即为VPS),每台VPS服务器有着独立公网IP地址和独立的操作系统,有隔离的CPU、内存和硬盘空间。由于自己是使用VPS搭建的,所以下面只会讲用VPS搭建的过程。当你购买了一台VPS服务器,你会知道它以IP地址标识,但要像starrycat.me这样个性地址,你还需要购买域名。

购买VPS

市面上有很多VPS提供商,国内有阿里云、腾讯云和景安快云等等,国外有搬瓦工(BandwagonHost)、Vultr和Linode等等。这些提供商都是比较有名的,你可以根据自己的需求去搜索选择适合自己的套餐。像我自己选择的是Vultr家的5美元/月套餐,东京机房,以下是一些配置信息:

  • 1 CPU,1G 内存,25G SSD,1000G 流量
  • KVM 虚拟化技术(便于加速工具安装),快照备份免费
  • 按小时扣费,随开随用,支持支付宝,微信支付

个人感觉体验不错。如果你选择Vultr,欢迎使用我的邀请链接注册:点我注册 你我都会得到10美元奖励(Vultrh还会不定期搞活动,优惠会更大)。

请注意
注册Vultr购买VPS前请务必关闭你的科学上网工具,否则有可能会被判定为欺诈行为!


填入邮箱地址和密码后提交,验证邮箱后即注册成功。

登录后进入后台,选择左侧Billing,点Alipay或WeChat Pay(2018年)为账户充值一定的初始金额以得到优惠奖励。

https://starrycat.me/wp-content/uploads/2018/01/01_01.png

充值成功后,点击右侧+号,创建新服务器。机房首选东京(Tokyo)和洛杉矶(Los Angeles),国内访问较快,新加坡(Singapore)也不错。这里选择东京。

https://starrycat.me/wp-content/uploads/2018/01/01_02.png

操作系统选择 Debian 7 x64

套餐选择 $5/mo 月付5美元

https://starrycat.me/wp-content/uploads/2018/01/01_03.png

接下来的选项如果不需要,保持默认即可,最后点击 Deploy Now 创建一个VPS服务器。

https://starrycat.me/wp-content/uploads/2018/01/01_04.png

等待两三分钟,系统就安装成功运行了。点击Server选中生成的VPS可以查看详细信息。自己摸索一下就知道是什么意思了,这里就不再多说了。

https://starrycat.me/wp-content/uploads/2018/01/01_05.png

以下信息待会儿会用到,先在这里提一下。

  • IP Address     IP地址
  • Username      登录名
  • Password       密码

请注意
虽说Vultr是按小时扣费的,但前提是流量不超额,超额流量另外计算。也有一种说法,如果已使用流量将接近流量限额时,删除VPS重新创建一个新的VPS,流量从0开始计算(自己没有试过,不知是否可行)。对于正常情况下的一个小型博客来说,1000G的月流量完全够用。

购买域名

域名服务商也有很多,国内有万网(阿里云旗下),国外有GoDaddy(全球最大域名服务商,又称“狗爹”),这是两个比较有名。我自己选的“狗爹”,下面以Godaddy为例。

注册并登陆GoDaddy,首页搜索你想要的域名,不同的域名后缀有不同的价格,一般第一年比较便宜,第二年后续费100+/年,推荐首选.com的,因为.com后缀比较友好。另外如果还需要考虑下域名国内备案的问题,因为如果你买的国内VPS可能会要求备案,而你的域名后缀又不支持国内备案,那就比较尴尬了。

https://starrycat.me/wp-content/uploads/2018/01/01_06.png

接下就跟你用淘宝购物一样操作就好了,至于附加的服务你就自己定夺吧,如果你想要长期保有你的博客域名,建议直接多购买几年,GoDaddy是支持支付宝的。


完成购买后,我们接下来要做的就是域名解析,也就是把域名指向网站空间IP。先进入域名管理器,选择刚刚购买的域名右侧的三个小黑点菜单点击,再选择管理 DNS,分别点击右下两个笔状按钮,按图示修改,打码部分填入VPS的IP地址,保存。这样starrycat.me和www.starrycat.me都能使用了。域名解析需要一段时间,下面我们先来搭建网站吧。

https://starrycat.me/wp-content/uploads/2018/01/01_07.png https://starrycat.me/wp-content/uploads/2018/01/01_08.png

安装LNMP环境

LNMP指的是一组用来运行动态网站的开源软件,他们名称的首字母缩写即为LNMP。

  • Linux: 一种自由和开放源代码的类Unix操作系统,发行版有Debian、CentOS等
  • Nginx: 一个高效的Web服务器
  • MySQL or MariaDB: 一种数据库管理系统
  • PHP: 一种开源通用的计算机脚本语言

WordPress博客程序依赖这些软件环境运行。

ssh远程连接VPS

安装LNMP和WordPress是在VPS进行的,VPS在远端,所以我们需要ssh连接到我们的VPS,Win平台下ssh工具有PuTTY和Xshell,自己使用的是PuTTY,推荐直接使用英文原版:下载页面

https://starrycat.me/wp-content/uploads/2018/01/01_09.png

根据自己的系统位数选择相应的版本下载,下载后免安装,可以直接打开运行。

https://starrycat.me/wp-content/uploads/2018/01/01_10.png

填入VPS的IP地址,默认端口22,然后点击下方Open,新窗口点击下方“是”。

这里的login as:输入登录名root后回车,提示输入密码,密码直接到VPS信息页复制,在PuTTY中右键即可粘贴(密码不会显示),然后回车即登陆到VPS。
登陆后建议先修改root密码,初始密码不便于记忆。

修改密码执行命令:

回车后设置新密码,建议新密码长度大于8位,最好含有特殊字符。回车后提示再次输入,再回车如下图即设置成功。

https://starrycat.me/wp-content/uploads/2018/01/01_11.png

下载安装LNMP

这里使用的是LNMP一键安装包,版本为1.4正式版。(2018年)

LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RHEL/Fedora/Aliyun/Amazon、Debian/Ubuntu/Raspbian/Deepin/Mint Linux VPS或独立主机安装LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/PHP/Apache)、LAMP(Apache/MySQL/PHP)生产环境的Shell程序。

关于其详细介绍请查看LNMP官网

由于编译安装LNMP需要一定的时间,为避免远程登陆中因网络中断或误关闭PuTTY窗口导致任务丢失,我们先创建screen会话。

登录后运行命令:

如果提示screen: command not found 命令不存在,可以执行安装命令:

如果在安装LNMP过程中出现异常中断,在重新登陆VPS后,执行恢复会话命令:

LNMP安装命令:

运行上述LNMP安装命令后,会出现如下提示:

https://starrycat.me/wp-content/uploads/2018/01/01_12.png

按需选择数据库软件版本,这里选择默认2,回车。

https://starrycat.me/wp-content/uploads/2018/01/01_13.png

提示需要设置MySQL的root密码(不输入直接回车将会设置为root),请务必牢记此密码,在下面给网站添加数据库时会用到。输入后回车进入下一步,出现提示:

https://starrycat.me/wp-content/uploads/2018/01/01_14.png

询问是否需要启用MySQL InnoDB引擎,InnoDB引擎默认为开启,一般建议开启,直接回车或输入 y ,如果确定确实不需要该引擎可以输入 n,回车完成。这里选择开启,输入y后回车进入下一步。

https://starrycat.me/wp-content/uploads/2018/01/01_15_1.png

自行选择PHP的版本,这里选默认4,回车进入下一步,选择是否安装内存优化:

https://starrycat.me/wp-content/uploads/2018/01/01_16.png

可以选择不安装、Jemalloc或TCmalloc,输入对应序号回车,直接回车为默认为不安装。这里选择默认不安装输入1,回车:

https://starrycat.me/wp-content/uploads/2018/01/01_17.png

出现绿色字样 ”Press any key to install…or Press Ctrl+c to cancel” ,再次确认选择无误后,回车开始安装。

安装时间可能会几十分钟到几个小时不等,主要是机器的配置网速等原因会造成影响,我自己花了大概半小时。

安装完成界面如下:

https://starrycat.me/wp-content/uploads/2018/01/01_18.png

并且Nginx, MySQL, PHP都是running,3306和80端口都存在,并且提示安装时间和”Install lnmp V1.4 completed! enjoy it”的话,说明安装成功。

此时LNMP环境已经在我们的VPS安装完成了。输入VPS的IP访问,你可以看到以下界面:

https://starrycat.me/wp-content/uploads/2018/01/01_19.png

根据提示我们把phpmyadmin目录重命名为不容易猜到的目录(比如phpma):

进入phpmyadmin所在目录:

重命名:

安装成功界面是IP访问时的默认界面,建议删除或重命名:

删除:

重命名:

安装启用缓存加速扩展

LNMP一键安装包里还提供了一些PHP缓存加速类扩展,详细请查看LNMP官方说明,安装启用这些扩展有助于减轻VPS服务器压力和提高网站的访问速度,在这里推荐你安装opcache和memcached。

进入LNMP解压目录:

https://starrycat.me/wp-content/uploads/2018/01/01_20.png

执行安装opcache命令:

https://starrycat.me/wp-content/uploads/2018/01/01_21.png

https://starrycat.me/wp-content/uploads/2018/01/01_22.png

回车开始安装。

https://starrycat.me/wp-content/uploads/2018/01/01_23.png

如上图示即安装成功。

执行安装memcached命令:

https://starrycat.me/wp-content/uploads/2018/01/01_24.png

https://starrycat.me/wp-content/uploads/2018/01/01_25.png

输入2后回车,再次确认回车开始编译安装。

出现以下界面即安装成功。

https://starrycat.me/wp-content/uploads/2018/01/01_26.png

至此,你可以选择删除前面下载的LNMP一键安装包,这样可以节省磁盘空间。

删除命令:

添加网站(虚拟主机)

上面的步骤已经完成LNMP环境的安装,现在我们要创建虚拟主机添加网站,详细可查看LNMP官方说明

添加域名:

回车后提示输入域名:

回车后提示是否添加更多域名,把带www的也填上:

回车后提示需要设置网站目录,采用默认的 /home/wwwroot/starrycat.me 即可,直接回车。

提示是否启用伪静态,伪静态可以使URL更加简洁也利于SEO,启用输入y后回车,提示启用的程序,输入:

回车即可。

提示是否启用日志,启用输入y,不启用输入n回车。这里我自己是不启用日志的。

接着提示数据库名和数据库用户名是否保持一致。输入y后回车,然后输入MySQL的root密码(不会显示,在安装LNMP环境过程中你设置好的),回车。

提示输入数据库名,自行设置,比如:

回车后设置数据库密码,比如:

设置好后回车,提示是否添加SSL,如果你有SSL证书输入y回车添加,没有就输入n回车。

最后如下图所示:

https://starrycat.me/wp-content/uploads/2018/01/01_27.png

出现”Press any key to start create virtul host”后,回车确认,开始创建虚拟主机。

添加成功会提示添加的域名、目录、伪静态、日志、数据库、FTP等相关信息,如下图:

https://starrycat.me/wp-content/uploads/2018/01/01_28.png

安装WordPress博客程序

比较有名的开源博客程序有WordPress和Typecho。WordPress是一个以PHP和MySQL为平台的个人博客软件,也是一款内容管理系统。WordPress有着许多漂亮的主题和众多强大插件,这是我选择WordPress来搭建我的博客的重要原因,而且官方支持中文。下面我们来安装Ta。

下载WordPress

登陆VPS,进入添加的域名目录:

回车进入,然后浏览器前往WordPress中文站获取最新的中文版程序包:下载页

https://starrycat.me/wp-content/uploads/2018/01/01_29.png

在wget后空格右键贴入地址:

回车开始下载,下载完成后,执行解压命令:

回车,等待解压完成后,将解压得到的wordpress文件夹内全部文件移动到当前域名目录下(注意后面还有一个点.):

回车。现在你可以选择删除掉空文件夹wordpress和安装包。

修改网站根目录的用户和用户组:

由于LNMP一键安装包禁用了scandir函数,这会导致在WordPress后台看不到安装的主题,所以在这里我们手动取消禁用:

回车,然后重启一下LNMP生效:

连接数据库安装网站

忙活了那么多,终于来到了最后一步。浏览器地址栏输入starrycat.me,提示连接数据库:

https://starrycat.me/wp-content/uploads/2018/01/01_30.png https://starrycat.me/wp-content/uploads/2018/01/01_31.png

等待最后的安装完成。

欢迎来到WordPress世界!开始探索吧!

赞赏

huxufeng进行回复 取消回复

textsms
account_circle
email

  • huxufeng  Google Chrome 70.0.3538.77 GNU/Linux x64

    :wink: 乌拉,按照教程完美解决问题,谢谢~!

    5年前 回复
  • kazula  Google Chrome 71.0.3578.80 Windows 10 x64 Edition

    赞~ 太详细了~ 帮助非常大!
    chown -R www:www /home/wwwroot/xxx 那一步显示no permission; 但是最后网站用起来似乎没问题…… 不知道要不要紧?

    5年前 回复
    • starrycat博主  Google Chrome 71.0.3578.98 Windows 10 x64 Edition

      @kazula: 以root用户设置也不行么?不过一般没什么问题,但最好还是养成关注权限的习惯。

      5年前 回复
    • bbii  Google Chrome 76.0.3809.100 Windows 10 x64 Edition

      @kazula: 出现错误是因为chattr命令锁定了该文件,禁止其修改。所以需要把i属性去掉,
      要想修改此文件就要把i属性去掉:
      chattr -i /home/wwwroot/域名文件夹/.user.ini

      5年前 回复
  • 匿名的我  Firefox 64.0 Windows 7 x64 Edition

    下面那位说no permission不行的,可以百度一下可以得出答案:

    chattr -i /home/wwwroot/你的网站目录/.user.ini

    sudo chown -R http://www.www /home/wwwroot/你的网站目录

    就好了,顺便感谢楼主的教程,很棒,

    PS:敢问主题和右下角那个“回到顶部”的插件 是啥。

    5年前 回复
  • 匿名的我  Firefox 64.0 Windows 7 x64 Edition

    突然想起主题最下面可以看到~2333

    5年前 回复
  • huangjinhai  Google Chrome 72.0.3626.109 Windows 10 x64 Edition

    服气

    5年前 回复
  • いのり  Google Chrome 72.0.3626.119 Mac OS X  10.14.0

    重启lnmp之后访问网站不能进入wp的界面,而是直接下载了download。这个download就是服务器上的index.php
    我网站是wp.inori.life
    之前一直是inori.life,用的hexo写的。现在想要换成wp,结果怎么整都不行,一直是只下载download这个页面。太奇怪了

    5年前 回复
  • booson  Google Chrome 80.0.3987.122 Windows 10 x64 Edition

    做完所有步骤之后403 Forbidden怎么办

    4年前 回复
  • booson  Google Chrome 80.0.3987.122 Windows 10 x64 Edition

    http error 500

    4年前 回复
  • wavwing  Google Chrome 84.0.4147.105 Windows 10 x64 Edition

    写的非常详细,能介绍下这个blog的theme是什么吗?

    4年前 回复

喵喵的灿烂星空

VPS+LNMP+WordPress搭建属于自己的博客【Vultr实测记录】
曾经十分羡慕网上一些博客站主们,他们的博客网站有着漂亮界面,发布着自己感想内容。与空间和贴吧不同,这些博客自由度更高,定制性更强,想着什么时候自己也能拥有一个这样的博客。终于…
扫描二维码继续阅读
2018-01-30