如何使用 LAMP + Postfix 设置 WordPress 作为 VPS 服务器上的仅发送邮件通知
您可能已经知道 WordPress 是什么:一个基于 PHP 和 MySQL 的免费开源博客工具和内容管理系统 (CMS)。其官方网站以文字游戏的形式宣称,它既免费又无价。
在其显着特征中,安装和主题之间切换(外观和感觉)的可能性非常突出。此外,数百个可用插件使您可以在网站上执行几乎所有操作。
作为一个强大的博客工具,WordPress 允许您的访问者对帖子发表评论,从而参与(希望丰富)有关其中所呈现主题的对话。为此,它包含一个消息传递组件,当读者对作者的帖子发表评论时,该组件会向作者发送通知。
此外,当您订阅帖子时(无论您是作者还是读者),您可以选择在有人评论时收到通知。
如果您购买了共享主机包,则必须已经为您设置和配置了 WordPress 所依赖的邮件服务(顺便说一句,大多数共享主机提供商都提供 WordPress 的一键安装)。
建议阅读: 7 家最佳网站托管公司
但是,如果您使用 VPS 并想要安装和使用 WordPress,则必须设置和配置邮件服务器(Postfix 或其他),以允许 WordPress 发送通知。
在这篇文章中,我们将解释如何在云 VPS 上设置完整的 LAMP 服务器以及如何将 WordPress 与 Postfix 集成。我们强烈建议您在寻找托管提供商时考虑我们的合作伙伴之一(请随时在此处查看我们对其服务和计划的评论)。
先决条件
为了让您的 WordPress 成功发送通知,您需要确保满足以下要求:
步骤1:为WordPress设置DNS MX和A记录
1. 随着LAMP堆栈的安装,您需要添加必要的DNS MX和A您的邮件服务器和域的记录。
如果您需要帮助来执行此操作,请查看本指南中的 MX 部分并参阅 DNS 管理器概述,然后再继续。
尽管这些链接解释了如何为 Linode VPS 设置 DNS 记录,但对于其他提供商来说应该没有显着差异。
步骤 2:在 Linux 中安装适用于 WordPress 的 LAMP Stack
2. 设置完整的LAMP (Linux – Apache – MySQL/MariaDB – PHP)堆栈。
以下是在两个主要发行版系列中执行此操作的说明:
- 在 RHEL/CentOS 7.0 上安装 LAMP
- 在 Fedora 24 服务器上安装 LAMP
- 在 Fedora 23 服务器上安装 LAMP
- 在 Ubuntu 16.04(及更高版本)上安装 LAMP
- 在 Ubuntu 15.04(及更高版本)上安装 LAMP
第 3 步:为 WordPress 创建数据库
3. 使用您选择的名称和 WordPress 使用的帐户创建一个数据库。稍后您将需要此信息来编辑 WordPress 配置文件。
使用您在执行上面的 mysql_secure_installation
脚本时选择的 root 密码登录到 MySQL/MariaDB 提示符灯安装步骤:
mysql -u root -p
[Enter password here]
MariaDB [(none)]> CREATE DATABASE wp_myblog;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON wp_myblog.* TO 'your_username_here'@'localhost' IDENTIFIED BY 'your_chosen_password_here';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;
完成上面列出的先决条件的前三个步骤后,我们就可以继续安装和配置 WordPress。
第 4 步:安装和配置 WordPress
4. 下载并解压最新的 WordPress tarball。
wget http://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz
cd wordpress
5. 在 WordPress 目录中,将现有的 wp-config-sample.php
重命名为 wp-config.php
:
mv wp-config-sample.php wp-config.php
然后使用 MySQL 设置部分下的数据库信息更新它(请参阅下图中突出显示的框):
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'database_name_here
');
/** MySQL database username */
define('DB_USER', 'username_here
');
/** MySQL database password */
define('DB_PASSWORD', 'password_here
');
/** MySQL hostname */
define('DB_HOST', 'localhost
');
/** Database Charset to use in creating database tables. */
define('DB_CHARSET', 'utf8
');
/** The Database Collate type. Don't change this if in doubt. */
define('DB_COLLATE', ''
);
上述设置说明:
- DB_NAME:您为 WordPress 创建的数据库的名称 (
wp_myblog
)。 - DB_USER:DB_NAME 的用户名 (
your_username_here
)。 - DB_PASSWORD:您为 DB_USER 选择的密码(
your_password_here
)。 - DB_HOST:主机名(通常是
localhost
)。 - DB_CHARSET:数据库字符集,通常不应更改。
- DB_COLLATE:数据库排序规则通常应留空。
6. 将 wordpress 目录移动到 Web 服务器的根目录(如果您计划设置其他虚拟主机,则移动到子目录)。
在此示例中,我们将把 wordpress 移动到 /var/www/html/wp
(Apache DocumentRoot 内的子目录):
mv wordpress /var/www/html/wp
7. 在浏览器中打开 http://
并填写所需的屏幕信息(其中 < ip>
是您服务器的 IP 地址):
- 网站标题
- 用户名
- 密码,两次
- 管理员电子邮件
- 点击“安装 WordPress”
如果安装成功,会显示如下页面:
现在,您可以单击登录,使用您在同一步骤中选择的凭据登录 WordPress 控制面板。
第 5 步:设置 Postfix 发送 WordPress 通知
此时,您已经拥有一个功能正常的 LAMP 环境和 WordPress。为了允许 WordPress 通过我们自己的邮件服务器发送通知,我们需要安装 Postfix 并将其配置为空客户端。
这意味着我们将仅使用 Postfix 邮件服务来发送 WordPress 电子邮件通知邮件。根据您选择的发行版,按照这些文章中给出的说明进行操作:
在 Ubuntu 和 Debian 中安装 Postfix
----------- On Ubuntu and Debian systems -----------
apt-get update && sudo apt-get install postfix
当系统要求您配置邮件服务器时,请选择:
- 邮件配置类型:
互联网站点
- 系统邮件名称:
yourdomain.com
在 CentOS、RHEL 和 Fedora 中安装 Postfix
----------- On CentOS, RHEL and Fedora systems -----------
yum update && yum install postfix
无论您使用哪个发行版,都可以使用以下值编辑 /etc/postfix/main.cf
:
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = loopback-only
有关上述设置的详细信息,您可能需要参考 Postfix 官方文档。
现在继续写一篇虚拟帖子。然后使用底部的表单添加评论。作为作者,您应该立即开始接收通知。
常见安装陷阱及解决方案
安装WordPress后,您可能会遇到以下问题。没什么大不了的——只需按照概述的说明来修复它们即可:
1. 如果您在浏览 http://
时看到的是目录列表而不是网页,这很可能意味着网络服务器需要默认情况下被告知读取 index.php
文件。
完成此任务的最简单方法是在安装目录中创建一个包含以下内容的 .htaccess
文件:
echo 'DirectoryIndex index.php' > /var/www/html/wp/.htaccess
2. 如果您看到 php 标签(<?php
和/或 ?>
)在网页中显示为纯文本,则 PHP 不是好好工作。确保您的 PHP 版本满足要求 (>v5.2.4
):
php -v
3. 尝试打开 index.php
文件时出现的任何其他错误(包括但不限于“标头已发送”)可能是由存在的任何字符(包括空格)引起的) 在 wp-config.php
文件中的 PHP 开始标记 (<?php)
之前或结束标记 (?>)
之后您在上面的第 5 步中进行了配置。
概括
在本文中,我们解释了如何在 Ubuntu 或 CentOS 上设置 LAMP 堆栈后安装 WordPress。
如果您已按照前面的说明正确设置了您的域的 DNS 记录,您应该立即开始接收评论通知。如果没有,请检查邮件服务器日志(CentOS 和 CentOS 中的 /var/log/maillog
或 /var/log/mail.log
>Ubuntu,分别)并使用下面的评论表回复我们。
我们非常乐意查看并回答您的任何问题。