WordPress 是全球最受欢迎的开源博客和 CMS 平台,为当今互联网上四分之一的网站提供支持。它基于 PHP 和 MySQL,并包含大量可以通过免费和高级插件和主题进行扩展的功能。 WordPress 是创建在线商店、网站或博客的最简单方法。
本教程介绍如何在 CentOS 7 上安装 WordPress。这是一个相当简单的过程,只需不到十分钟即可完成。
我们将使用LEMP堆栈 使用 Nginx 作为 Web 服务器、SSL 证书、最新的 PHP 7.2 和 MySQL/MariaDB 作为数据库服务器。
先决条件#
在继续本教程之前,请确保满足以下先决条件:
有一个指向您的服务器公共IP地址的域名。在本教程中我们将使用example.com
.
登录身份为具有 sudo 权限的用户
.
Nginx 安装如下这些说明
.
您已为您的域安装了 SSL 证书。您可以通过以下方式生成免费的 Let’s Encrypt SSL 证书这些说明
.
创建 MySQL 数据库#
WordPress 将其数据和配置存储在 MySQL 数据库中。第一步是创建MySQL数据库,MySQL 用户帐户并授予对数据库的访问权限
.
如果您的 Ubuntu 服务器上尚未安装 MySQL 或 MariaDB,您可以按照以下说明之一进行安装:
在 CentOS 7 上安装 MySQL
.
在 CentOS 7 上安装 MariaDB
.
通过执行以下命令登录 MySQL shell:
mysql -u root -p
在 MySQL shell 中,运行以下 SQL 语句创建数据库
named wordpress
,用户名为wordpressuser
并向用户授予所有必要的权限:
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
FLUSH PRIVILEGES;
EXIT;
安装 PHP 7.2#
CentOS 7 附带 PHP 版本 5.4。推荐的 WordPress PHP 版本是 PHP 7.2。
To 安装PHP 所有必需的 PHP 扩展都运行以下命令:
sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi-php72
sudo yum install php-cli php-fpm php-mysql php-json php-opcache php-mbstring php-xml php-gd php-curl
我们安装了 PHP FPM,因为我们将使用 Nginx 作为 Web 服务器。
默认情况下 PHP FPM 将以用户身份运行apache
在端口 9000 上。我们将用户更改为nginx
并从 TCP 套接字切换到 Unix 套接字。为此,请打开/etc/php-fpm.d/www.conf
文件编辑以黄色突出显示的行:
/etc/php-fpm.d/www.conf
...
user = nginx
...
group = nginx
...
listen = /run/php-fpm/www.sock
...
listen.owner = nginx
listen.group = nginx
确保/var/lib/php
使用以下命令拥有正确的目录所有权chown命令
:
sudo chown -R root:nginx /var/lib/php
进行更改后,启用并启动 PHP FPM 服务:
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
下载 WordPress#
在下载 WordPress 存档之前,首先创建一个目录,我们将在其中放置 WordPress 文件:
sudo mkdir -p /var/www/html/example.com
下一步是从 WordPress 下载最新版本WordPress 下载页面 使用以下内容wget命令
:
cd /tmp
wget https://wordpress.org/latest.tar.gz
下载完成后,提取 WordPress 存档
and 移动文件 进入域的文档根目录:
tar xf latest.tar.gz
sudo mv /tmp/wordpress/* /var/www/html/example.com/
设置正确的权限,以便 Web 服务器可以完全访问站点的文件和目录:
sudo chown -R nginx: /var/www/html/example.com
配置 Nginx#
到目前为止,您的系统上应该已经安装了带有 SSL 证书的 Nginx,如果还没有,请检查本教程的先决条件。
要为我们的 WordPress 实例创建一个新的服务器块,我们将使用Nginx 食谱 来自 Nginx 官方网站。
打开你的文本编辑器 并创建一个新的nginx 服务器块
:
sudo nano /etc/nginx/conf.d/example.com.conf
添加以下行:
/etc/nginx/conf.d/example.com.conf
# Redirect HTTP -> HTTPS
server {
listen 80 ;
server_name www.example.com example.com ;
include snippets/letsencrypt.conf ;
return 301 https://example.com $request_uri ;
}
# Redirect WWW -> NON WWW
server {
listen 443 ssl http2 ;
server_name www.example.com ;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem ;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem ;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem ;
include snippets/ssl.conf ;
return 301 https://example.com $request_uri ;
}
server {
listen 443 ssl http2 ;
server_name example.com ;
root /var/www/html/example.com ;
index index.php ;
# SSL parameters
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem ;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem ;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem ;
include snippets/ssl.conf ;
include snippets/letsencrypt.conf ;
# log files
access_log /var/log/nginx/example.com.access.log ;
error_log /var/log/nginx/example.com.error.log ;
location = /favicon.ico {
log_not_found off ;
access_log off ;
}
location = /robots.txt {
allow all ;
log_not_found off ;
access_log off ;
}
location / {
try_files $uri $uri/ /index.php? $args ;
}
location ~ \.php$ {
try_files $uri = 404 ;
fastcgi_pass unix:/run/php-fpm/www.sock ;
fastcgi_index index.php ;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ;
include fastcgi_params ;
}
location ~ * \.(js|css|png|jpg|jpeg|gif|ico|svg) $ {
expires max ;
log_not_found off ;
}
}
不要忘记将 example.com 替换为您的 WordPress 域,并设置 SSL 证书文件的正确路径。一切HTTP 请求将被重定向到 HTTPS 。此配置中使用的片段是在以下位置创建的本指南
.
在重新启动 Nginx 服务之前测试配置以确保没有语法错误:
sudo nginx -t
如果没有错误,输出应如下所示:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
你可以重启Nginx 通过输入:
sudo systemctl restart nginx
完成 WordPress 安装#
现在Wordpress已下载并且服务器配置已完成,您可以通过Web界面完成安装。
打开浏览器,输入您的域名,将出现类似于以下内容的屏幕:
选择您想要使用的语言,然后单击Continue
button.
接下来你会看到如下信息页面,点击Let's go!
button.
在下一个屏幕上,设置向导将要求您输入数据库连接详细信息。输入您之前创建的 MySQL 用户和数据库详细信息。
单击开始 WordPress 安装Run the Installation
button.
在下一步中,您需要输入 WordPress 站点的名称并选择用户名(出于安全目的,请勿使用“admin”)。
安装程序将自动为您生成一个强密码。不要忘记保存该密码。您也可以自行设置密码。
输入您的电子邮件地址并选择是否要阻止搜索引擎对网站建立索引(不推荐)。
Click Install WordPress
安装完成后,您将进入一个页面,通知您 WordPress 已安装。
要访问您的 WordPress 登录页面,请单击Log in
button.
输入你的用户名与密码。
您将被重定向到 WordPress 管理仪表板。
从这里,您可以通过安装新主题和插件开始自定义 WordPress 安装。
结论#
恭喜,您已经在 CentOS 7 服务器上成功安装了带有 Nginx 的 WordPress。使用 WordPress 的第一步 是一个很好的起点,可以详细了解如何创建您自己的新 WordPress 网站。
如果您有疑问,请随时在下面发表评论。