WordPress是最受欢迎的开源内容管理系统 (CMS) 之一,与 Drupal 或 Joomla 等其他 CMS 相比,拥有高达 60% 的市场份额。 WordPress 可用于开发任何类型的网站,无论是博客、小型企业还是大型企业。凭借其免费和高级插件和主题,WordPress 网站可以快速扩展以提供高级功能。还可以从头开始开发自定义主题和插件,将独特的功能嵌入到任何 WordPress 网站中。在本教程中,我们将介绍如何使用 LEMP 堆栈安装 WordPress CMS,即在 Ubuntu 18.04 中使用 NGINX 作为 Web 服务器。
- 您可以使用 root 或 root 在 Ubuntu 18.04 服务器中打开 SSH 会话sudo启用的用户。
- 指向 WordPress 安装的注册域名或子域。
- 指向您服务器 IP 地址的域 DNS A 记录。
本教程需要使用域名。每当您看到 SUBDOMAIN、DOMAIN 或 TLD 变量时,请将它们替换为您自己的域名值。
在开始安装 NGINX 之前,始终建议将 Ubuntu 18.04 升级到最新版本。以下 apt-get 命令将为您完成此操作。
# apt-get update
# apt-get upgrade
第一个命令将更新可用软件包及其版本的列表,第二个命令将实际安装您拥有的软件包的较新版本。完成系统升级后,请使用以下命令检查 Ubuntu 系统的发行版本。
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04.2 LTS
Release: 18.04
Codename: bionic
按照以下步骤在 Ubuntu 服务器上安装带有 NGINX 的 WordPress。
NGINX 在 Ubuntu 的默认存储库中可用,可以使用单行命令进行安装,如下所示。
# apt-get install nginx
NGINX 安装后,它将自动运行。您可以通过以下方式验证系统控制命令.
# systemctl status nginx
● nginx.service - A high-performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2019-02-12 09:12:08 UTC; 11s ago
Docs: man:nginx(8)
Process: 17726 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 17714 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 17729 (nginx)
Tasks: 2 (limit: 1152)
CGroup: /system.slice/nginx.service
├─17729 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─17732 nginx: worker process
上述命令的输出验证 NGINX 是否已加载并处于活动状态,PID 为 17729。
MariaDB 在 Ubuntu 的默认存储库中可用。也可以从单独的 MariaDB 存储库安装它。但我们将坚持从 Ubuntu 的默认存储库安装它。从终端发出以下命令来安装它,并且您可以选择运行mysql_secure_installation
以确保其安全。
# apt-get install mariadb-server
# systemctl enable mariadb.service
# mysql_secure_installation
MariaDB root 用户的默认密码为空。要更新 root 用户的密码,请获取 MySQL 提示符并通过从 MySQL shell 发出以下命令来更新密码。
$ mysql -u root -p
MariaDB [(none)]> use mysql;
MariaDB [mysql]> update user SET PASSWORD=PASSWORD("Passw0rd!") WHERE USER='root';
MariaDB 在 Ubuntu 18.04 系统中的安装已完成。现在继续下一步安装 PHP。
最新版本的 PHP (7.2) 可在 Ubuntu 18.04 的存储库中找到,并且是默认安装候选版本,因此只需在终端中运行以下命令即可安装它。
# apt-get install php7.2 php7.2-cli php7.2-fpm php7.2-mysql php7.2-json php7.2-opcache php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl
除了安装 php7.2 之外,上面的 apt-get 命令还安装了一些其他软件包,例如 MySQL、XML、Curl 和 GD 软件包,并确保您的 WordPress 站点可以与数据库交互,支持 XMLRPC,并且还可以裁剪并自动调整图像大小。此外,php-fpmNGINX 需要(快速进程管理器)包来处理 WordPress 安装的 PHP 页面。请记住,一旦 PHP 安装完成,FPM 服务将自动运行。
在服务器中安装并配置 MariaDB 后,创建专门用于 WordPress 安装的用户和数据库。为此,请使用以下命令登录 MariaDB 服务器mysql -u root -p
命令并完成如下所述的步骤。
$ mysql -u root -p
Enter password:
MariaDB [mysql]> CREATE DATABASE wordpress_db;
Query OK, 1 row affected (0.00 sec)
MariaDB [mysql]> GRANT ALL ON wordpress_db.* TO 'wpuser'@'localhost' IDENTIFIED BY 'Passw0rd!' WITH GRANT OPTION;
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
MariaDB [mysql]> exit
不要因为没有创建“wpuser”数据库用户的命令而感到惊慌。它将使用上面的 GRANT 命令自动创建。我最近了解到这一点,并希望让阅读本教程的人感到惊讶。 :)
现在让我们继续配置 NGINX 服务器块来为您的 WordPress 域提供服务。首先,为您的 WordPress 安装创建根文件夹。
# mkdir -p /var/www/html/wordpress/public_html
要为您的 WordPress 域创建 NGINX 服务器块,请导航至/etc/nginx/sites-available
文件夹。这是 NGINX 服务器块的默认位置。使用您最喜欢的编辑器为 NGINX 服务器块创建配置文件并按如下所示进行编辑。
# cd /etc/nginx/sites-available
# cat wordpress.conf
server {
listen 80;
root /var/www/html/wordpress/public_html;
index index.php index.html;
server_name SUBDOMAIN.DOMAIN.TLD;
access_log /var/log/nginx/SUBDOMAIN.access.log;
error_log /var/log/nginx/SUBDOMAIN.error.log;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
location ~ /\.ht {
deny all;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expires max;
log_not_found off;
}
}
使用以下命令检查上述配置文件的正确性:
# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
要激活服务器块,请在内部创建上述配置文件的符号链接/etc/nginx/sites-enabled
folder.
# cd /etc/nginx/sites-enabled
# ln -s ../sites-available/wordpress.conf .
重新加载 NGINX 以应用新的 WordPress 域设置。
# systemctl reload nginx
在此步骤中,使用以下命令下载存档的 WordPress 文件wget
并将其解压缩到我们在上一步中创建的 WordPress 安装的根目录中。要完成此操作,请从终端运行以下命令。
# cd /var/www/html/wordpress/public_html
# wget https://wordpress.org/latest.tar.gz
# tar -zxvf latest.tar.gz
# mv wordpress/* .
# rm -rf wordpress
更改所有权并对提取的 WordPress 文件和文件夹应用正确的权限。为此,请从终端使用以下命令。
# cd /var/www/html/wordpress/public_html
# chown -R www-data:www-data *
# chmod -R 755 *
现在在 WordPress 配置文件中提供数据库名称、数据库用户和密码,以便它可以连接到我们之前创建的 MariaDB 数据库。默认情况下,WordPress 提供了一个示例配置文件,我们将使用它来创建我们自己的配置文件。为此,首先将示例 WordPress 配置文件重命名为 wp-config.php 并使用您自己喜欢的编辑器进行编辑。
# cd /var/www/html/wordpress/public_html
# mv wp-config-sample.php wp-config.php
# vi wp-config.php
...
...
define('DB_NAME', 'wordpress_db');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'Passw0rd!');
...
...
为了保护您的 WordPress 站点,请通过以下方式生成安全密钥,将安全密钥添加到上述 WordPress 配置文件中的数据库配置选项之后link.
您现在已准备好使用您喜欢的浏览器安装 WordPress 网站。
要完成 WordPress 的安装,请将您最喜欢的 Web 浏览器指向 SUBDOMAIN.DOMAIN.TLD,然后按照如下所述的步骤操作。
安装程序将提示您选择一种语言。选择一种语言,然后单击“继续”。
现在提供网站标题、用户名、密码、电子邮件等网站信息,然后单击“安装 WordPress”按钮。
您已完成 WordPress 网站的安装。单击“登录”登录仪表板并继续为您的站点配置插件和主题。
提供我们之前首次登录时输入的用户名和密码。
恭喜!您的 WordPress 网站已安装并准备好根据您的要求进行自定义。
WordPress 是最流行的 CMS,我们学习了如何在 Ubuntu 服务器上使用 NGINX 安装它。您现在可以进一步使用它创建您的网站。