ubuntu 系统 wordpress 博客搭建步骤

最近需要在我的服务器上搭建一个博客,按照我的设想应该就是一个静态博客,自己从头写 html 和 css 也未尝不可,就是添加 markdown 和 latex 的支持没有头绪,说不定有点复杂。不管怎么样还是想要先搭起来再说,以后想改的时候再改吧,于是就先搭一个 wordpress 博客了。

据说是有一些工具可以一键安装 wordpress 的,但是我比较穷,服务器是最低配置,硬盘空间很小,我担心这些工具会给我下载很多用不上的软件,遂考虑自己从头安装。所以「五分钟就能装好」的 wordpress 我硬是搞了一整天,这篇文章就是记录一下这个过程中我踩的坑。

整个安装过程是分为两个步骤,即运行环境搭建与 wordpress 安装。下面分别阐述。

运行环境搭建

运行环境主要是指服务器端要用到的服务器三件套,即 mysql, php 和 https 服务器,后者最好是 apache 或者 nginx,据说其他服务器也是可以的,但是配置起来应该会比较麻烦,一开始我也是用的 tomcat 作为 web 服务器,研究了很久还是无法在上面运行 php,遂放弃。最后我是用了 apache2 作为 https 服务器。

此外还有一些别的要求,比如服务器端需要配置好 ftp 服务器,这个我是早就配置好了的,这里就不再赘述了。

mysql 下载与配置

wordpress 推荐使用 5.6 或者更高的 mysql 版本,于是我就下载了 5.6 的版本,命令如下:

sudo apt-get update
sudo apt-get install mysql-server-5.6

在下载过程中会提示设置根用户的密码,需要好好设置并且记住这个密码。下载好后可以登录到 mysql 中进行验证。

mysql -u root -p

输入此前设置的密码就可以登录了。登录之后可以查看一下版本号,查看一下都默认有那些数据库,玩一玩儿 SQL 语言。

apache2 下载

直接一个命令就可以搞定了。

sudo apt-get install apache2

下载好也可以验证一下。首先启动 apache2 服务器:

/etc/init.d/apache2 start

apache2 默认的网站根目录在 /var/www/html,在这个位置应该是有一个 index.html 文件。打开本机的浏览器,输入服务器的域名(或者 IP 地址),应该就可以看到这个文件了,显示的是 apache2 的欢迎界面。没有显示的话可以查看一下 80 端口是否打开,该目录下是否确实存在 index.html 文件,以及查看 apache2.conf 来确定 apache2 的默认根目录是否已经设置成其他目录了。

php 下载与配置

wordpress 推荐使用 7.3 或者更高版本的 php,所以我就下载了 7.3 版本的。ubuntu 默认 apt-get install php 安装是 7.0 的版本,所以需要首先添加 php 的第三方源。

sudo apt-get install software-properties-common python-software-properties
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install -y php7.3

其中,第一行是安装一些依赖项,第二行才是添加第三方源。安装完成之后,可以输入

php -v

来查看是否安装成功,正常情况下会输出安装好的 php 的版本号。

php 安装好之后还需要与 apache2 关联起来,这样 apache2 服务器才能解析 .php 文件并且输出结果。首先安装 apache2 的 php 插件,以支持运行 .php 文件。

sudo apt-get install libapache2-mod-php7.3

接下来进入到 apache2 的根目录 /etc/apache2,编辑 apache2.conf 文件,该文件是 apache2 服务器的整体配置文件。在该配置文件的最后加上:

ADDHandler php-script .php .html
ADDType text/html .php .html

保存后重启 apache2 服务器:

/etc/init.d/apache2 restart

为了测试安装是否成功,可以在 /var/www/html 目录下新建一个 test.php 文件,在其中添加

<html>
<head> test php </head>
<body>

<?php
phpinfo();
?>

</body>
</html>

在本机的浏览器中输入 http://your.ip.address/test.php,如果正确显示了就说明安装成功了。没有显示的话一般是 php 和 apache2 没有关联上的问题。

wordpress 安装

获取 wordpress 安装包

运行环境配置好后,安装 wordpress 就简单多了。首先在wordpress 官网上将压缩包下载到本机,然后使用 ftp 将该文件传输至 web 服务器的根文件夹,并且解压:

tar -xzvf wordpress-version-number.tar.gz

当然也可以直接将 wordpress 的安装包下载到 web 服务器上:

cd root/directory/of/web/server
wget https://wordpress.org/wordpress-version-number.tar.gz
tar -xzvf wordpress-version-number.tar.gz

将解压后的文件放到网站的根文件夹(不包括 wordpress 文件夹本身)。

为 wordpress 创建数据库以及数据库用户

官网上是推荐用 phpmyadmin 来进行这一步,然而这个软件居然有 80M?!心疼…我寻思不就是创建一个数据库吗,直接在 mysql 里面操作不就可以了。

首先以先前创建的根用户登录 mysql:

mysql -u root -p

然后在 mysql 中创建 wordpress 数据库,wordpress 用户,并且授予该用户权限:

mysql> CREATE DATABASE wordpress;
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO "wordpress_user"@"localhost"
       IDENTIFIED BY "your_password";
mysql> FLUSH PRIVILEGES;
mysql> EXIT;

这里我是遇到了一个问题,使用这里新创建的用户 wordpress_user 无法登录到 mysql 数据库中,总是提示密码不正确。为了解决这个问题,我是以根用户登录,然后修改 wordpress_user 用户的密码:

mysql -u root -p
mysql> SET PASSWORD FOR wordpress_user@localhost = password("your_new_password");
mysql> FLUSH PRIVILEGES;
mysql> EXIT;

这样就没有问题了。

设置 wp-config.php

这一步主要是告诉 wordpress 为它配置好的数据库的信息,实际上省略这步也是可以的,然后这些信息会在 wordpress 安装过程中提示如何指定。

进入此前 wordpress 解压的根目录,从 wp-config-sample.php 拷贝得到 wp-config.php 文件,修改其中涉及到 mysql 的设置:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'your_wordpress_db_name' );
 
/** MySQL database username */
define( 'DB_USER', 'wordpress_user' );

/** MySQL database password */
define( 'DB_PASSWORD', 'your_password' );

/** MySQL hostname */
define( 'DB_HOST', 'localhost' );

/** Database Charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );

/** The Database Collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );

安装 wordpress

在本机的浏览器输入 web 服务器的域名(或是 IP 地址),应该就会看到 wordpress 的安装页面了。之后按照其中的指引进行操作就行,安装完成就可以起飞了!

安装完成

既然 web 服务器已经配置好了,以后的博客直接更新在我自己的服务器上面,csdn 就不再更新了。欢迎大家来访问 我的博客,目前还尚在搭建当中。

没有账号? 忘记密码?

社交账号快速登录