如何在 CentOS 7 上使用 Caddy 安装 WordPress

介绍

WordPress是一个流行的内容管理系统(CMS)。它可以用来快速和轻松地设置博客和网站,几乎所有的管理都是通过Web界面可能的。

在大多数情况下,WordPress使用LAMP或LEMP堆栈安装(即使用Apache或Nginx作为Web服务器)。在本指南中,我们将使用Caddy(https://caddyserver.com/)来设置WordPress,而不是Caddy。

在本教程中,您将安装和配置由Caddy支持的WordPress。

前提条件

要遵循本教程,您将需要:

一个 CentOS 7 服务器安装了 此初始服务器设置教程,包括一个 sudo 非 root 用户。

步骤1:安装PHP

要运行WordPress,您需要一个Web服务器,MySQL数据库和PHP脚本语言.您已经安装了CaddyWeb服务器和MySQL数据库,所以最后的要求是安装PHP。

首先,确保您的包裹是最新的。

1sudo yum update

安装 PHP 和 PHP 扩展 WordPress 取决于,如支持 MySQL、‘curl’、XML 和多字节字符串。

1sudo yum install php php-fpm php-mysql php-curl php-gd php-mbstring php-mcrypt php-xml php-xmlrpc

安装完成后,您可以通过检查 PHP 的版本来验证 PHP 是否正确安装。

1php -v

您将看到类似于此的输出,该输出显示了 PHP 的版本号。

1[secondary_label PHP version output]
2PHP 5.4.16 (cli) (built: Nov 6 2016 00:29:02)
3Copyright (c) 1997-2013 The PHP Group
4Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

在我们可以继续前进之前,我们必须稍微修改PHP服务的配置文件,使其使用我们的非特权caddy用户运行服务器。

使用「vi」或您最喜愛的文本編輯器開啟 PHP-FPM 配置檔案. 如果您不熟悉,這裡是 簡短介紹「vi」

1sudo vi /etc/php-fpm.d/www.conf

查找指定用户帐户和组的片段。

1[label /etc/php-fpm.d/www.conf]
2; Unix user/group of processes
3; Note: The user is mandatory. If the group is not set, the default user's group
4;       will be used.
5; RPM: apache Choosed to be able to access some dir as httpd
6user = apache
7; RPM: Keep a group allowed to write in log dir.
8group = apache

将两个值更改为 caddy 如下:

1[label /etc/php-fpm.d/www.conf]
2; Unix user/group of processes
3; Note: The user is mandatory. If the group is not set, the default user's group
4;       will be used.
5; RPM: apache Choosed to be able to access some dir as httpd
6user = caddy
7; RPM: Keep a group allowed to write in log dir.
8group = caddy

为了让Caddy能够与PHP进行通信,请启动PHP服务。

1sudo systemctl start php-fpm

所有的WordPress依赖性都安装了,接下来,我们将为WordPress配置一个MySQL数据库。

步骤2:创建一个MySQL数据库和专用用户

WordPress 使用 MySQL 数据库来存储所有信息. 在默认的 MySQL 安装中,只创建一个 root 管理帐户. 此帐户不应该被使用,因为其对数据库服务器的无限权利是安全风险。

首先,登录到MySQL root 管理帐户。

1mysql -u root -p

您将被提示在安装过程中为MySQL root 帐户设置的密码。

创建一个名为WordPress的新数据库,将用于WordPress网站,您可以使用不同的名称,但请确保您稍后记住它以进行额外配置。

1CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

接下来,创建一个新的用户,将被允许访问这个数据库. 在这里,我们使用的用户名wordpressuser的简单性,但你可以选择自己的名字. 记得用一个强大和安全的密码来代替密码

1GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'password';

<$>[注] ** 注意:** 请记住,默认密码策略需要12个字符,其中至少有一个上级字母,一个下级字母,一个数字和一个特殊字符。

Flush权限通知MySQL服务器的更改。

1FLUSH PRIVILEGES;

您现在可以安全地离开MySQL。

1EXIT;

WordPress 有一个专用数据库和用户帐户,所以所有系统组件都设置了。

步骤三:下载WordPress

安装 WordPress 包括将最新版本下载到 Web 根目录并确保它可通过 Web 服务器访问,然后通过 WordPress 的图形界面完成安装。

首先,更改当前目录为/var/www,这是存储您的网站文件的 Web 根。

1cd /var/www

下载最新压缩的WordPress版本. 使用最新版本很重要,因为软件经常更新安全补丁。

1sudo curl -O https://wordpress.org/latest.tar.gz

提取您刚刚下载的压缩档案。

1sudo tar zxf latest.tar.gz

这将自动创建一个名为WordPress的新目录,您现在可以安全地删除下载的档案,因为它不再需要。

1sudo rm latest.tar.gz

最后一步是更改 WordPress 文件和目录的权限,以便所有文件都可以由 Caddy 编写,这将允许 WordPress 自动更新到更新的版本。

1sudo chown -R caddy:caddy wordpress

<$>[注] 注: 选择正确的权限为WordPress文件是偏好和管理做法的问题。不允许写入WordPress文件可以增加安全性,使无法利用一些可能导致损害WordPress核心文件的错误,但同时,它导致禁用自动安全更新和通过WordPress Web接口安装和更新插件的能力。

接下来,您需要修改 Web 服务器的配置以服务您的网站。

步骤 4 — 配置 Caddy 来服务 WordPress 网站

在这里,我们将更改Caddyfile配置文件,以告诉Caddy我们的WordPress安装位置以及应该向访问者发布的域名。

使用vi或您最喜欢的文本编辑器打开配置文件

1sudo vi /etc/caddy/Caddyfile

将下列配置复制并粘贴到文件中. 您可以从以前的教程中删除任何示例配置。

 1[label /etc/caddy/Caddyfile]
 2example.com {
 3    tls admin@example.com
 4    root /var/www/wordpress
 5    gzip
 6    fastcgi / 127.0.0.1:9000 php
 7    rewrite {
 8        if {path} not_match ^\/wp-admin
 9        to {path} {path}/ /index.php?_url={uri}
10    }
11}

这个Caddyfile的结构如下:

*第一个行中的example.com是网站将可用的域名。 用自己的域名替换它。 *[email protected]tls指令之后告诉Caddy它应该使用的电子邮件地址来请求Let’s Encrypt证书。 如果你需要恢复证书,Let’s Encrypt将在恢复过程中使用该电子邮件地址。 *root指令告诉Caddy网站文件的位置。 在这个例子中,它是/var/www/wordpress. *gzip指令告诉Caddy使用Gzip压缩来使网站更快。 *fastcgi指令配置PHP处理器以支持文件的扩展phpM`

相应地更改配置文件后,保存文件并退出。

重新启动 Caddy 以执行新的配置文件设置。

1sudo systemctl restart caddy

当Caddy启动时,它将自动从Let's Encrypt获得SSL证书,以使用TLS加密安全地服务您的网站. 您现在可以通过使用Web浏览器导航到您的域,访问您的Caddy托管的WordPress网站。

您现在已经安装并配置了Caddy和所有必要的软件来托管WordPress网站,最后一步是使用其图形界面完成WordPress的配置。

步骤五:配置WordPress

WordPress 有一个 GUI 安装向导来完成其安装,包括连接到数据库并设置您的第一个网站。

当您第一次在浏览器中访问您的新 WordPress 实例时,您将看到语言列表。选择您想要使用的语言。在下一个屏幕上,它描述了它需要关于您的数据库的信息。点击 让我们去! ,下一页将要求数据库连接的详细信息。填写此表格如下:

  • 数据库名称 应该是WordPress,除非您在步骤2中定制了它。
  • 用户名 应该是 wordpressuser ,除非您在步骤2中定制了它。

当您点击提交时,WordPress会检查提供的详细信息是否正确,如果您收到错误消息,请双重检查您是否正确输入了数据库详细信息。

一旦WordPress成功连接到你的数据库,你会看到一个消息,它开始于 **好,闪闪发光!你已经完成了安装的这一部分。

现在你可以点击 运行安装 开始安装。短时间后,WordPress将向你呈现一个最后的屏幕,请求你的网站详细信息,如网站标题,管理员帐户用户名,密码和电子邮件地址。

<$>[注] 注: 对于管理帐户,不要使用像 admin 这样的常见用户名是很好的安全做法,因为许多安全漏洞依赖标准的用户名和密码。

点击安装WordPress后,您将被引导到WordPress仪表板,您已经完成了WordPress的安装,您可以自由使用WordPress来定制您的网站并撰写帖子和页面。

结论

您现在有一个使用Caddy Web服务器服务的WordPress安装程序。Caddy将自动从Let's Encrypt获得SSL证书,通过安全连接服务您的网站,并使用HTTP/2和Gzip压缩来更快地服务网站。您可以阅读更多关于Caddy的独特功能和Caddyfile的配置指南。

如果你想与你的新的WordPress实例使用插件,请注意,一些插件依赖于Apache网页服务器的.htaccess文件。除Apache以外的网页服务器已经成为WordPress的常见,所以没有许多这些.htaccess依赖的插件存在。

大多数依赖.htaccess的插件都是缓存插件(例如,W3 Total Cache),这些插件使用.htaccess来完全绕过PHP进行处理,另一个例子是Wordfence,这是一个Web应用程序防火墙模块,默认使用.htaccess,但它正确支持不同的配置模型。

Published At
Categories with 技术
comments powered by Disqus