一、介绍
WordPress是一种流行的内容管理系统(CMS),用于创建博客,企业网站和门户。它由PHP和MySQL提供支持,开源CMS为超过三分之一的网站提供支持。如今,在托管MySQL数据库上部署WordPress可以方便地利用时间点恢复,自动备份和异地复制。
Vultr 提供高度可用的托管数据库解决方案,您可以使用这些解决方案来部署、扩展和运行您的 WordPress 网站,而不会丢失数据。本指南向您展示如何在 Ubuntu 20.04 服务器上使用 Vultr 的托管数据库安装 WordPress。
二、准备工作
要继续阅读本指南,请执行以下操作:
- 部署 Ubuntu 20.04 服务器。
- 创建一个非根
sudo
用户。 - 安装 LAMP 堆栈。跳过步骤 2。(安装数据库服务器),因为本指南使用 Vultr 的托管 MySQL 数据库。
- 预配新的托管 MySQL 数据库实例。然后,在托管数据库“概述”页下,记下“连接详细信息”。本指南使用以下示例连接详细信息:
- 用户名:Vultradmin
- 密码:TEST_PASSWORD
- host:test_server.vultrdb.com
- 端口:16751
三、 安装并启用依赖包
WordPress 需要几个 PHP 扩展和 Apache 模块才能运行。按照以下步骤安装扩展并启用模块。
- 更新 Ubuntu 服务器的软件包信息索引。
$ sudo apt update
- 确保您的系统是最新的。
& sudo apt -y upgrade
- 安装以下 PHP 扩展。
$ sudo apt install -y php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip
- 启用 Apache 模块。WordPress要求该模块制作人性化的URL。
mod_rewrite
$ sudo a2enmod rewrite
- 重新启动 Apache 以加载新的更改。
$ sudo systemctl restart apache2
四、为 WordPress 设置一个 MySQL 数据库
WordPress应用程序需要不同的数据库表才能运行,包括:,,,,等。这些表直接相关并共享单个数据库。按照以下说明为您的WordPress网站创建数据库:posts
users
comments
options
- 在您的服务器上安装 MySQL 客户端。请记住,因为您使用的是 Vultr 的托管数据库,所以您不必在服务器上安装 MySQL 服务器。您只需要 MySQL 客户端应用程序即可从服务器对托管数据库运行 SQL 命令。
$ sudo apt install mysql-client-core-8.0
- 发出以下命令以登录到 Vultr 的托管数据库服务器。替换为托管数据库服务器的正确和。
test_server.vultrdb.com
16751
host
port
$ mysql -h test_server.vultrdb.com -P 16751 -u vultradmin -p
- 输入您的 MySQL 密码(例如),然后按继续。然后,发出以下命令以设置数据库和帐户。替换为安全密码。
TEST_PASSWORD
ENTERwordpress
wordpress_user
EXAMPLE_PASSWORD
mysql> CREATE DATABASE wordpress; CREATE USER 'wordpress_user'@'%' IDENTIFIED WITH mysql_native_password BY 'EXAMPLE_PASSWORD'; GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress_user'@'%'; FLUSH PRIVILEGES;
输出。
... Query OK, 1 row affected (0.00 sec)
- 从 Vultr 的托管数据库服务器注销。
mysql> QUIT;
五、 创建 WordPress 目录并设置虚拟主机文件
要将 WordPress 网站与其他系统文件分开,您必须为您的网站创建一个新目录。然后,为了使事情井井有条,您需要一个单独的 WordPress 虚拟主机文件。请按照以下步骤执行这些任务:
- 在 Web 服务器的根目录 () 下创建一个新目录。
wordpress
/var/www/
$ sudo mkdir /var/www/wordpress
- 获取新目录的所有权。
wordpress
$ sudo chown -R $USER:$USER /var/www/wordpress
- 使用文本编辑器在目录下为 WordPress 站点打开新的虚拟主机配置文件 ()。
wordpress.conf
/etc/apache2/sites-available/
$ sudo nano /etc/apache2/sites-available/wordpress.conf
- 在文件中输入以下信息。替换为服务器的公共 IP 地址或域名。
/etc/apache2/sites-available/wordpress.conf
172.16.0.1
<VirtualHost *:80> ServerName 172.16.0.1 DocumentRoot /var/www/wordpress <Directory /var/www/wordpress> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>
- 保存并关闭文件。
/etc/apache2/sites-available/wordpress.conf
- 启用新的配置文件。
/etc/apache2/sites-available/wordpress.conf
$ sudo a2ensite wordpress.conf
- 禁用缺省虚拟主机配置文件。
$ sudo a2dissite 000-default.conf
- 重新启动 Apache 以加载新的更改。
$ sudo systemctl restart apache2
六、下载并配置 WordPress
WordPress 维护着一个最新的在线存储库,您可以在其中下载最新版本。执行以下步骤下载 WordPress:
- 导航到目录。
/var/www/wordpress
$ cd /var/www/wordpress
- 使用 Linuxcommand 下载最新的 WordPress 软件包。
curl
$ curl -O https://wordpress.org/latest.tar.gz
- Unzip the archive file to your working directory.
latest.tar.gz
$ tar xzvf latest.tar.gz
- 将提取的目录的内容复制到该目录。
wordpress
/var/www/wordpress
$ sudo rsync -rtv wordpress/ /var/www/wordpress
七、配置 WordPress 并完成安装
将 WordPress 下载到服务器后,最后一步是将应用程序配置为使用外部管理的 Vultr 数据库。以下步骤将引导您完成整个过程:
- 创建 WordPress 配置文件的新副本。
$ sudo cp /var/www/wordpress/wp-config-sample.php /var/www/wordpress/wp-config.php
- 在下设置目录。WordPress 需要此目录在新版本可用时升级您的网站。
upgrade
var/www/wordpress/wp-content
$ sudo mkdir /var/www/wordpress/wp-content/upgrade
- 将目录的所有权分配给并设置适当的权限。Apache在user下运行,需要管理文件的权限。
/var/www/wordpress
www-data
www-data
$ sudo chown -R www-data:www-data /var/www/wordpress $ sudo find /var/www/wordpress/ -type d -exec chmod 750 {} \; $ sudo find /var/www/wordpress/ -type f -exec chmod 640 {} \;
- 使用官方WordPress密钥API生成新内容。
salts
keys
$ curl -s https://api.wordpress.org/secret-key/1.1/salt/
将生成的值复制到安全的位置。
define('AUTH_KEY', 'g,W6>~F)N:``)08a1v-NofzX K; #?vgE=9Un[TOn,jCqa?m!aF#18%#lz{D|$k:'); define('SECURE_AUTH_KEY', '5bIx_wR-^yVzX_t|9vw3z-L,1~#7E39*@-ZEjU{WV||m3|g-)Yv?(bu*X1~B5#kA'); define('LOGGED_IN_KEY', 'BP0T|(eicO[Fc*&,k/4/Fk$/A+[6Ci9d391b)jp1%E|Y||-i@Ef)Qs!@)60?u{ >'); define('NONCE_KEY', '{>JGt8!97%LPOkV J)Rv-I =#rah2|)S5p}F8twtZho$:>OuF5$zu7xTz@||PpKv'); define('AUTH_SALT', '^G4Z8C3)y8~w#0=mm|+|&O]v16:z-[zvG~`,hxIs27C>Q9_=>KyKG=L/c~WU|@>`'); define('SECURE_AUTH_SALT', '`yDrZ}CBp[VF5T2?oGa-q@&7]z)PJaPq9y~7],On11gUgx57hY-ZoA{?z8-~Q/Jq'); define('LOGGED_IN_SALT', '~;TGD[1#ct8lbTU-AR+dFL[Fl<I1:lgP-:f,.zZHnighvSZ@paNdp$7gb08[ S1*'); define('NONCE_SALT', 'W6Vs!S]P1$*/)4Lu[/>|]$dX*?6@}%?c-pHI`!0:3Q&_lIl}-nqol+>;*`/DD@NU');
- 打开您之前创建的 WordPress 配置文件。
$ sudo nano /var/www/wordpress/wp-config.php
- 在配置文件中找到以下部分,并粘贴从WordPress密钥API检索到的值。
... define('AUTH_KEY', 'g,W6>~F)N:``)08a1v-NofzX K; #?vgE=9Un[TOn,jCqa?m!aF#18%#lz{D|$k:'); define('SECURE_AUTH_KEY', '5bIx_wR-^yVzX_t|9vw3z-L,1~#7E39*@-ZEjU{WV||m3|g-)Yv?(bu*X1~B5#kA'); define('LOGGED_IN_KEY', 'BP0T|(eicO[Fc*&,k/4/Fk$/A+[6Ci9d391b)jp1%E|Y||-i@Ef)Qs!@)60?u{ >'); define('NONCE_KEY', '{>JGt8!97%LPOkV J)Rv-I =#rah2|)S5p}F8twtZho$:>OuF5$zu7xTz@||PpKv'); define('AUTH_SALT', '^G4Z8C3)y8~w#0=mm|+|&O]v16:z-[zvG~`,hxIs27C>Q9_=>KyKG=L/c~WU|@>`'); define('SECURE_AUTH_SALT', '`yDrZ}CBp[VF5T2?oGa-q@&7]z)PJaPq9y~7],On11gUgx57hY-ZoA{?z8-~Q/Jq'); define('LOGGED_IN_SALT', '~;TGD[1#ct8lbTU-AR+dFL[Fl<I1:lgP-:f,.zZHnighvSZ@paNdp$7gb08[ S1*'); define('NONCE_SALT', 'W6Vs!S]P1$*/)4Lu[/>|]$dX*?6@}%?c-pHI`!0:3Q&_lIl}-nqol+>;*`/DD@NU'); ...
- 查找以下数据库设置。替换为正确的密码。请记住,您使用的是外部管理的数据库,并且必须替换为正确的组合。
EXAMPLE_PASSWORD
test_server.vultrdb.com:16751
host
port
... /** The name of the database for WordPress */ define( 'DB_NAME', 'wordpress' ); /** MySQL database username */ define( 'DB_USER', 'wordpress_user' ); /** MySQL database password */ define( 'DB_PASSWORD', 'EXAMPLE_PASSWORD' ); /** Database hostname */ define( 'DB_HOST', 'test_server.vultrdb.com:16751' ); ...
- 保存并关闭文件。
/var/www/wordpress/wp-config.php
- 在网络浏览器上输入服务器的公共 IP 地址或域名以完成 WordPress 安装。
- http://172.16.0.1
- 选择一种语言,然后在下一个屏幕上填写出现的表单,然后单击“安装 WordPress”以完成安装。
八、结论
本指南向您展示如何在 Ubuntu 20.04 服务器上使用Vultr的托管 MySQL 数据库安装 WordPress。安装 WordPress 后,您可以使用新主题和插件自定义您的网站。Vultr 的托管数据库开箱即用,可以自动执行数据库管理的所有要求方面,以便您专注于改进 WordPress 网站。