是我有史以来写的第一篇博客,也是至今为止第一次使用Markdown编辑器。从中可能会有不足之处,但我也会在学习中不断完善。本篇博客的目的是向大家介绍这个博客的搭建过程,所使用的系统环境,与在搭建过程的详细步骤。 坏事说到前头,我搭建这的博客的目的并不是为了向他人炫耀自己的学识,而是用来记录自己的学习过程与进度,而且我本身也是一名 萌新 初学者 同时也是一个懒癌患者,请不要对我的更新和回复速度报以太大的期望,所以望大家见谅~

搭建步骤

阅前须知

  • 以下内容对萌新极为不友好, 请在照搬步骤时多加考虑,如出现问题,本萌新概不负责~

需求

  • 一台web服务器
  • 一个好听的域名(有些人喜欢直接用ip, 表示很不理解)
  • 基础的web运维知识(前端:html js css, 后端:php node.js etc.)
  • linux相关(apache2 nginx)
  • 不怕麻烦的学习态度

云服务器的选择

博客的搭建那肯定是要一个服务器的啦, 虽然我不反对有些人喜欢用自己电脑做端口映射当服务器的, 但这样做无疑对主机寿命有很大影响(家用户主机的硬件不是为了提供全天24小时不间断服务而设计的). 所以说最好的方式还是选择一个自己喜欢的云服务器供应商. 然而, 供应商的选择也是有讲究的. 国内供应商 - 如阿里云 腾讯云,不仅价格便宜(学生优惠)还提供免费的CDN加速,但其服务器的质量就一言难尽了. 国外的供应商 - 如 SiteGround InMOtion HostGator Vultr, 虽然价格略高, 但好在服务器质量和免备案!!!免备案!!!免备案!!!(重要的事情说三遍) 博客想怎么写就怎么写, 妈妈再也不用担心我会被查水表啦~ 本博客选择供应商为Vultr 再次打个广告-> 推荐link 绑定+关注Vultr Twitter账号可免费获得3美元哟~

操作系统的选择

个人觉得, web服务器最好使用linux系统(IIS辣鸡). 本博客采用的是Ubuntu 18.10, 其实用什么版本的linux都无所谓, 但要注意的是linux的发行版本. 不同类别的linux在操作上是有不同的, 如基于 Redhat 的 Fedora Core 和 CentOS, 与 基于 Debian 的 Ubuntu 和 Kali 在命令行方面存在差异.

域名的选择

一个好听的域名也是十分最重要的, 你可以选择国内的域名供应商 - 再强调一般, 国内的虽然便宜, 但不管做什么都是要备案的. 国外的供应商会相对比较贵, 同时也提供whois免查. 再此提供一个技巧, 如果你选择的是国外域名, 最好在 domcomp 上查一下, 此网站能比较该域名在不同供应商所提供的价格(得选最便宜的~). 本博客最终在 namecheap 里购买此域名(darkunicorn.me) - 在价格上, 首年只要4刀, 但renew要18刀... 考虑一年换一个新的 哈哈.

环境搭建 Nginx + MySQL + PHP7

前面及讲了一大堆废话, 现在终于到正题了. 在这里我会介绍如何在Ubuntu上配置Nginx+MySQL+PHP7.

1. ssh到云服务器

丛云主机供应商里拿到主机ip和root密码, 直接ssh到服务器上(感觉我又在讲废话了). ssh客户端推荐使用MobaXterm, 此软件提供多种功能, 包括ssh和sftp(方便给服务器上次文件).

2. 安装Nginx

Ubuntu 和 Debian都适用与此教程, 安装很简单, 几句命令即可(需要root):

apt-get update
apt-get install nginx
service nginx restart

apt-get update 更新下载源, 第二行命令及下载nginx, 第三行命令启用nginx服务.
安装完成后, 直接用浏览器访问http://域名 或 http://主机ip, 如果显示 Welcome to nginx! 就说明安装成功.

3. 安装Mysql

不说废话了, 直接上代码:

apt-get install mysql-server

一般情况下, mysql-server在安装完后不会有任何提示(有些版本会提示输入root密码?), 不管怎么样, 你可以先以root尝试登录mysql来确认是否安装成功.

mysql -u root -p

会提示你输入root密码, 因为root初始密码为空,所以直接敲enter就可以进去了. 在确认玩mysql安装成功后摁ctrl+z或输入exit退出.

4. 安装PHP7

一行命令即可:

apt-get install php-fpm php-mysql

安装完成后一定要先记住PHP的安装版本(我的版本是php7.2), 因为在配置nginx服务器时会用到.

5. 配置Nginx是有PHP7

在安装完PHP后我们还需要修改nginx服务的配置文件, 来告诉nginx使用PHP processor来处理动态内容(以.php结尾的文件).
修改Nginx的配置:

vim /etc/nginx/sites-available/default

除了使用vim之外, 你还可以选用你喜欢的文本编辑器, 然后修改default文件如下:

这里只需要记住, 除了uncomment之外, 你还需要:
1. 添加index.php作为默认主页
2. 将server_name后的值改为主机ip(公有ip)或域名.
3. 在fastcgi_pass 后方添加 unix:run/php/php7.2-fpm.sock;(取决于PHP7的版本,这里是php7.2).
在配置完后重启Nginx:

/etc/init.d/nginx restart

5. 测试Nginx是否支持PHP

先添加一个测试页面info.php 到/var/www/html/(对应配置文件中root的路径:

vim /var/www/html/info.php

文件内容为:

<?php 
phpinfo();
?>

保存后直接访问该网页http://域名或ip/info.php, 显示如下则安装成功:

WordPress服务部署

接下来一部分会介绍如何部署WordPress. 包括WordPress的下载 创建, MySQL数据库的操作, 用户添加, 及如何配置WordPress和安装WordPress.

1.下载WordPress

可以直接通过wget命令下载或去它官网下载最新的版本:

wget http://wordpress.org/latest.tar.gz

.tar.gz文件解压:

tar -xzvf latest.tar.gz

2. 创建WordPress操作的数据库和用户

MySQL root 直接登录(建议为root添加密码以确保安全性):

mysql -u root -p

创建数据库:

CREATE DATABASE wordpress;

创建用户:

CREATE USER wordpress@localhost;

设置密码:

SET PASSWORD FOR wordpress@localhost=PASSWORD("你的密码");

配置权限:

GRANT ALL PRIVILEGES ON wordpress.* TO wordpress@localhost IDENTIFIED BY '你的密码';

刷新权限配置:

FLUSH PRIVILEGES;

退出MySQL:

exit

3. 配置WordPress

重命名示例文件wp-config-sample.php(此处的路径/root/wordpress取决于你wordpress的下载解压路径)

mv /root/wordpress/wp-config-sample.php /root/wordpress/wp-config.php

修改配置文件内容:

vim /root/wordpress/wp-config.php

修改的内容包括DB_NAME,DB_USER,DB_PASSWORD以及下面的唯一key,其中前三个是在第二步自己设置的内容,唯一key可以直接去它提供的 网站 上拷贝,修改后的文件如下所示:

4. 配置Nginx

将wordpress里面的内容拷贝到Nginx对应root路径下:

cp -r /root/wordpress/* /var/www/html

修改权限:

chown -R www-data:www-data /var/www/html

重启Nginx:

/etc/init.d/nginx restart

5. WordPress安装

以上全部搞定后, 直接访问你的服务器ip或域名就可以进入wordpress安装页面了:

选择好安装语言, 配置站点标题, 用户名和邮箱后, 你的第一个wordpress博客就搞定了.
访问 http://域名或ip/wp-login.php ,输入刚才设置的账户和密码,进入博客管理界面,在这里可以写文章,改主题,应用插件等等.

鸣谢

  • 在此, 我首先该感谢 flyzy2005大佬 的WordPress博客安装详解, 本博客的搭建少不了这篇教程的帮助. 以上教程就是基于此篇教程的补充加修改版, 我同时也在安装的过程中学到了很多.
  • 其次, 我也非常感谢这套主题的作者, 或修改者 Mashiro 我个人非常喜欢这个主题(二次元赛高!), 也非常感谢创作该博客封面的P站画师们( Linfi-MUU, marmoset秋月つかさ ), 是他们的努力创作才有这个博客里面可爱的头像与背景 - 独角兽超可爱的!~

一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。