介绍
WordPress是受欢迎的内容管理系统(CMS)。 它可以用于快速,轻松地设置博客和网站,几乎所有的管理都可以通过Web界面进行。
在大多数情况下,使用LAMP或LEMP安装WordPress(即使用Apache或Nginx作为Web服务器)。 在本指南中,我们将使用Caddy设置WordPress。 Caddy是一款新的网络服务器,其广泛的独特功能,如HTTP / 2支持和自动TLS加密,受欢迎的免费证书提供商Let's Encrypt迅速普及。
在本教程中,您将安装和配置由Caddy支持的WordPress。
先决条件
要遵循本教程,您将需要:
- 一个CentOS 7服务器设置了这个初始服务器设置教程 ,包括一个sudo非root用户。
- 通过遵循如何在CentOS 7上安装MySQL来安装MySQL 。
- Caddy通过遵循如何在CentOS 7教程中托管与Caddy的网站来安装,包括配置为指向您的Droplet的域名 。
第1步 - 安装PHP
为了运行WordPress,您需要一个Web服务器,一个MySQL数据库和PHP脚本语言。 您已经拥有Caddy网络服务器和从先决条件安装的MySQL数据库,所以最后一个要求是安装PHP。
首先,确保您的包是最新的。
sudo yum update
安装PHP和PHP扩展 WordPress取决于,如支持MySQL, curl
,XML和多字节字符串。
sudo yum install php php-fpm php-mysql php-curl php-gd php-mbstring php-mcrypt php-xml php-xmlrpc
一旦安装完成,您可以通过检查PHP的版本来验证PHP是否正确安装。
php -v
您将看到类似于此的输出,显示PHP的版本号。
PHP version outputPHP 5.4.16 (cli) (built: Nov 6 2016 00:29:02)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies
在我们继续前进之前,我们必须稍微修改PHP服务的配置文件,以使其能够使用我们的非特权的caddy
用户来运行服务器。 CentOS上的默认配置假定Apache是首选的服务器。
使用vi
或您喜欢的文本编辑器打开PHP-FPM配置文件。 如果你不熟悉这个简要介绍vi
。
sudo vi /etc/php-fpm.d/www.conf
查找指定用户帐户和组的片段。
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; will be used.
; RPM: apache Choosed to be able to access some dir as httpd
user = apache
; RPM: Keep a group allowed to write in log dir.
group = apache
将这两个值更改为球童如下:
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; will be used.
; RPM: apache Choosed to be able to access some dir as httpd
user = caddy
; RPM: Keep a group allowed to write in log dir.
group = caddy
保存并关闭文件退出。 为了让Caddy能够与PHP进行沟通,启动PHP服务。
sudo systemctl start php-fpm
所有WordPress的依赖项都已安装,接下来,我们将配置一个用于WordPress的MySQL数据库。
第2步 - 创建MySQL数据库和专用用户
WordPress使用MySQL数据库来存储其所有信息。 在默认的MySQL安装中,只创建一个根管理帐户。 不应该使用此帐户,因为它对数据库服务器的无限权限是安全隐患。 在这里,我们将为WordPress创建一个专用的MySQL用户以及新用户将被允许访问的数据库。
首先,登录到MySQL 根管理帐号。
mysql -u root -p
系统将提示您在安装期间为MySQL 根帐户设置的密码。
创建一个名为wordpress
的新数据库,将用于WordPress网站。 您可以使用其他名称,但请确保以后记住它以进行其他配置。
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
接下来,创建一个允许访问此数据库的新用户。 在这里,为了简单起见,我们使用用户名wordpressuser
,但您可以选择自己的名称。 请记住用强大而安全的密码替换密码。
GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'password';
注意:请注意,默认密码策略需要12个字符,至少有一个大写字母,一个小写字母,一个数字和一个特殊字符。 如果您忘记遵循该策略,则上述命令不会创建用户,而是显示错误消息。
刷新权限通知MySQL服务器的更改。
FLUSH PRIVILEGES;
您现在可以安全地退出MySQL。
EXIT;
WordPress有一个专用的数据库和用户帐户,所以所有的系统组件都被设置了。 下一步是安装WordPress本身。
第3步 - 下载WordPress
安装WordPress涉及将最新版本下载到Web根目录,并确保它可以由Web服务器访问,然后通过WordPress的图形界面完成安装。 在此步骤中,我们将下载该版本,因为在访问GUI之前,需要配置Web服务器。
首先,将当前目录更改为存储您的网站文件的Web根目录/var/www
。
cd /var/www
下载最新压缩的WordPress版本。 使用最新版本是非常重要的,因为软件经常使用安全补丁进行更新。
sudo curl -O https://wordpress.org/latest.tar.gz
提取刚刚下载的压缩档案。
sudo tar zxf latest.tar.gz
这将自动创建一个名为wordpress
的新目录。 您现在可以安全地删除下载的存档,因为它不再需要。
sudo rm latest.tar.gz
最后一步是更改WordPress文件和目录的权限,以便所有文件都可以由Caddy写入。 这将允许WordPress自动更新为较新版本。
sudo chown -R caddy:caddy wordpress
注意:为WordPress文件选择正确的权限是偏好和管理实践的问题。 不允许对WordPress文件的写入访问可能会增加安全性,因为不可能利用可能导致WordPress核心文件受到损害的一些错误,但同时导致禁用自动安全更新,以及通过WordPress安装和更新插件的功能网页界面
接下来,您需要修改Web服务器的配置以便为您的网站提供服务。
第4步 - 配置球童服务WordPress网站
在这里,我们将修改Caddyfile
配置文件告诉Caddy我们的WordPress安装所在的位置,以及哪个域名应该发布给访问者。
使用vi
或您喜欢的文本编辑器打开配置文件
sudo vi /etc/caddy/Caddyfile
将以下配置复制并粘贴到文件中。 您可以从以前的教程中删除任何示例配置。
example.com {
tls admin@example.com
root /var/www/wordpress
gzip
fastcgi / 127.0.0.1:9000 php
rewrite {
if {path} not_match ^\/wp-admin
to {path} {path}/ /index.php?_url={uri}
}
}
这个Caddyfile
的结构如下:
- 第一行的
example.com
是该网站将可用的域名。 将其替换为您自己的域名。 -
tls
指令后的admin@example.com
告诉Caddy应该使用的电子邮件地址来请求我们的加密证书。 如果您需要恢复证书,则加密将在恢复过程中使用此电子邮件地址。 -
root
指令告诉Caddy网站文件所在的位置。 在这个例子中,它是/var/www/wordpress
。 -
gzip
指令告诉Caddy使用Gzip压缩来使网站更快。 -
fastcgi
指令配置PHP处理程序来支持具有php
扩展名的文件 - 使用
rewrite
指令启用漂亮的URL(在WordPress中称为漂亮的永久链接)。 如果您使用Apache,则需要在.htaccess
文件中由WordPress自动提供此配置,但需要单独配置为Caddy。
相应更改配置文件后,保存文件并退出。
重新启动球童将新的配置文件设置生效。
sudo systemctl restart caddy
当Caddy启动时,它将自动获取SSL证书,让我们加密,使用TLS加密安全地为您的网站提供服务。 您现在可以使用网络浏览器访问您的Caddy托管的WordPress网站。 当您这样做时,您会注意到地址栏中的绿色锁定符号表示通过安全连接显示站点。
您现在已经安装并配置了Caddy和所有必要的软件来托管WordPress网站。 最后一步是使用图形界面完成WordPress的配置。
第5步 - 配置WordPress
WordPress有一个GUI安装向导完成其设置,包括连接到数据库和设置您的第一个网站。
当您首次在浏览器中访问新的WordPress实例时,您将看到一个语言列表。 选择您要使用的语言。 在下一个屏幕上,它描述了数据库所需的信息。 点击我们走吧! ,下一页将要求数据库连接细节。 填写如下表格:
- 数据库名称应该是
wordpress
,除非您在第2步中进行了定制。 - 用户名应该是wordpressuser ,除非您在第2步中进行了自定义。
- 密码应该是您在第2步中为wordpressuser设置的密码。
- 数据库主机和表前缀应保留其默认值。
当您单击提交时 ,WordPress将检查提供的详细信息是否正确。 如果收到错误消息,请仔细检查您是否正确输入了数据库详细信息。
一旦WordPress成功连接到您的数据库,您会看到一个从所有权利开始的消息,闪烁! 您已经通过这部分安装。 WordPress现在可以与您的数据库通信。
现在可以单击运行安装开始安装。 短时间后,WordPress将向您提供最终的屏幕,询问您的网站详细信息,例如网站标题,管理员帐户用户名,密码和电子邮件地址。 强大的密码将自动为您生成,但您可以选择自己的密码。
注意:对于管理帐户来说,不要使用管理员这样的通用用户名,因为许多安全漏洞依赖于标准用户名和密码,这是一个很好的安全措施。 为您的主要帐户选择唯一的用户名和强大的密码,以帮助您的网站安全。
单击安装WordPress后 ,您将被引导到WordPress信息中心。 您现在已完成WordPress安装,您可以自由使用WordPress来自定义您的网站并撰写帖子和页面。
结论
您现在可以使用Caddy Web服务器提供正常的WordPress安装。 凯迪将通过“加密”自动获取SSL证书,通过安全连接为您的站点提供服务,并使用HTTP / 2和Gzip压缩功能更快地为网站提供服务。 您可以在Caddy的官方文档中了解Caddy的独特功能和配置指令。
如果要使用新的WordPress实例插件,请注意,某些插件依赖于Apache Web服务器的.htaccess
文件。 除Apache之外的Web服务器已经成为WordPress的常见问题,所以这些.htaccess
依赖的插件中并不存在很多。 然而,确实存在的几个不能与Caddy一起使用,因为它不使用.htaccess
。 如果您在使用卡迪时遇到WordPress插件的问题,请记住这一点。
依赖于.htaccess
大多数插件都是缓存插件(例如,W3 Total Cache),它使用.htaccess
来完全绕过PHP进行处理。 另一个例子是Wordfence,它是默认情况下使用.htaccess
的Web应用程序防火墙模块,但它正确支持不同的配置模型。