如何在 CentOS 7 上安装 WordPress

2023-11-09

介绍

WordPress 是一个使用 PHP 和 MySQL 的免费开源网站和博客工具。 WordPress 是目前互联网上最流行的 CMS(内容管理系统),拥有超过 20,000 个插件来扩展其功能。这使得 WordPress 成为快速轻松地建立和运行网站的绝佳选择。

在本指南中,我们将演示如何在 CentOS 7 上使用 Apache Web 服务器设置 WordPress 实例。

先决条件

在开始使用本指南之前,需要首先完成几个步骤。

您将需要安装一台 CentOS 7 服务器并使用具有以下权限的非 root 用户进行配置:sudo特权。如果您尚未执行此操作,可以执行以下步骤中的步骤 1-4:CentOS 7 初始服务器设置指南创建此帐户。

此外,您需要在 CentOS 7 服务器上安装 LAMP(Linux、Apache、MySQL 和 PHP)堆栈。如果您尚未安装或配置这些组件,您可以使用本指南来学习如何在 CentOS 7 上安装 LAMP.

完成这些步骤后,您可以继续安装 WordPress。

第一步 — 为 WordPress 创建 MySQL 数据库和用户

我们将采取的第一步是准备。 WordPress 使用关系数据库来管理网站及其用户的信息。我们已经安装了 MariaDB(MySQL 的一个分支),它可以提供此功能,但我们需要为 WordPress 创建一个数据库和一个用户来使用。

首先,登录 MySQLroot(管理)帐户,通过发出以下命令:

mysql -u root -p

系统将提示您输入安装 MySQL 时为 root 帐户设置的密码。提交密码后,您将看到 MySQL 命令提示符。

首先,我们将创建一个 WordPress 可以控制的新数据库。你可以随意称呼它,但我会这样称呼它wordpress对于这个例子。

CREATE DATABASE wordpress;

Note:每个 MySQL 语句或命令都必须以分号 (;),因此如果您遇到任何问题,请检查以确保它存在。

接下来,我们将创建一个新的 MySQL 用户帐户,专门用于操作 WordPress 的新数据库。创建单一功能数据库和帐户是一个好主意,因为它可以更好地控制权限和其他安全需求。

我要打电话给新账户wordpressuser并为其分配一个密码password。您绝对应该使用不同的用户名和密码,因为这些示例不是很安全。

CREATE USER wordpressuser@localhost IDENTIFIED BY 'password';

此时,您已经拥有了专门为 WordPress 制作的数据库和用户帐户。但是,用户无权访问数据库。我们需要通过授予用户对数据库的访问权限来将这两个组件链接在一起。

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

现在用户可以访问数据库了,我们需要刷新权限,以便 MySQL 知道我们最近所做的权限更改:

FLUSH PRIVILEGES;

执行完这些命令后,我们可以输入以下命令退出 MySQL 命令提示符:

exit

您现在应该返回到常规 SSH 命令提示符。

第二步 — 安装 WordPress

在我们下载 WordPress 之前,我们需要安装一个 PHP 模块以确保它正常工作。如果没有这个模块,WordPress 将无法调整图像大小以创建缩略图。我们可以使用以下命令直接从 CentOS 的默认存储库获取该包yum:

sudo yum install php-gd

现在我们需要重新启动 Apache,以便它识别新模块:

sudo service httpd restart

我们现在准备从项目网站下载并安装 WordPress。幸运的是,WordPress 团队始终将其软件的最新稳定版本链接到同一 URL,因此我们可以通过输入以下内容来获取最新版本的 WordPress:

cd ~
wget http://wordpress.org/latest.tar.gz

这将下载一个压缩存档文件,其中包含我们需要的所有 WordPress 文件。我们可以提取存档文件来重建 WordPress 目录tar:

tar xzvf latest.tar.gz

您现在将有一个名为的目录wordpress在你的主目录中。我们可以通过将解压的文件传输到 Apache 的文档根目录来完成安装,在那里可以将其提供给我们网站的访问者。我们可以将 WordPress 文件传输到那里rsync,这将保留文件的默认权限:

sudo rsync -avP ~/wordpress/ /var/www/html/

rysnc会将您解压的目录中的所有内容安全地复制到文档根目录/var/www/html/。不过,我们仍然需要为WordPress添加一个文件夹来存储上传的文件。我们可以用mkdir命令:

mkdir /var/www/html/wp-content/uploads

现在我们需要为 WordPress 文件和文件夹分配正确的所有权和权限。这将提高安全性,同时仍允许 WordPress 按预期运行。为此,我们将使用chown向 Apache 的用户和组授予所有权:

sudo chown -R apache:apache /var/www/html/*

通过此更改,Web 服务器将能够创建和修改 WordPress 文件,并且还允许我们将内容上传到服务器。

第三步 — 配置 WordPress

使用 WordPress 所需的大部分配置稍后将通过 Web 界面完成。然而,我们需要从命令行做一些工作,以确保 WordPress 可以连接到我们为其创建的 MySQL 数据库。

首先进入安装 WordPress 的 Apache 根目录:

cd /var/www/html

WordPress依赖的主要配置文件名为wp-config.php。默认情况下包含一个与我们需要的设置基本匹配的示例配置文件。我们所要做的就是将其复制到默认配置文件位置,以便 WordPress 可以识别并使用该文件:

cp wp-config-sample.php wp-config.php

现在我们有了一个可以使用的配置文件,让我们在文本编辑器中打开它:

nano wp-config.php

我们需要对此文件进行的唯一修改是保存数据库信息的参数。我们需要找到标题为MySQL settings并改变DB_NAME, DB_USER, and DB_PASSWORD变量,以便 WordPress 正确连接并验证我们创建的数据库。

使用您创建的数据库的信息填写这些参数的值。它应该看起来像这样:

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpress');

/** MySQL database username */
define('DB_USER', 'wordpressuser');

/** MySQL database password */
define('DB_PASSWORD', 'password');

这些是您需要更改的唯一值,因此完成后保存并关闭文件。

第四步 — 通过 Web 界面完成安装

现在您已准备好文件并配置了软件,您可以通过 Web 界面完成 WordPress 安装。在网络浏览器中,导航到服务器的域名或公共 IP 地址:

http://server_domain_name_or_IP

首先,您需要选择安装 WordPress 时使用的语言。选择语言并单击后Continue,您将看到 WordPress 初始配置页面,您将在其中创建初始管理员帐户:

WordPress Web Install

填写您想要创建的站点和管理帐户的信息。完成后,单击安装WordPress按钮以继续。

WordPress 将确认安装,然后要求您使用刚刚创建的帐户登录:

WordPress Success

要继续,请点击Log in按钮,然后填写您的管理员帐户信息:

WordPress Login

击中后Log in,您将看到新的 WordPress 仪表板:

WordPress Dashboard

结论

您现在应该已经在 CentOS 7 服务器上启动并运行了一个 WordPress 实例。从这里您可以采取多种途径。我们在下面列出了一些常见选项:

  • 使用多站点设置多个 WordPress 站点
  • 使用 WPScan 测试易受攻击的插件和主题
  • 从命令行管理 WordPress
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 CentOS 7 上安装 WordPress 的相关文章

  • 自定义 WP 主题时,我应该将导航栏放在“”标签之前还是之后?

    我正在通过制作子主题来自定义 WP 主题 我将 Bootstrap 中的导航栏放入子主题目录中的 header php 文件中 但是 我不确定在哪里放置导航栏代码 我可以把它都放在前面and之后标记成功 例如 无论我选择哪一个 导航栏都显示
  • 在字符串中间添加一个字符

    可能有一个简单的解决方案可以解决这个问题 但会引起面部表情 我将时间存储为 4 个字符长的字符串 即 1300 我试图将该字符串显示为 13 00 我觉得必须有一个比我现在正在做的更优雅的解决方案 我目前有 startTime get fi
  • 使用 Timber 插件时,wordpress 简单的短代码不会呈现

    我最近接管了一个使用 Timber 我不熟悉 的 WordPress 网站的开发 我正在尝试使用新的插件和随附的短代码 但这当然不起作用 我已经研究这个问题几个小时了 似乎没有一个简单的答案 为了使用像这样的简单短代码 sp faq类别 7
  • 在centos上设置jenkins:ssh密钥和git的问题

    经历了很多问题 但似乎没有什么能解决我的问题 或者更准确地说 我不确定我是否正确地完成了整个事情 所以这里是 已安装centos 6 3操作系统 然后我按照以下指南安装詹金斯 https wiki jenkins ci org displa
  • WordPress - pre_get_posts 代替页面上的 query_posts

    我的情况有点复杂 我会尽量简洁地解释一下 我目前正在使用query posts修改我网站上自定义页面上的主查询 据我所知 它工作得很好 尽管我已经读到 由于多种不同的原因 使用 query posts 是不好的做法 那么 我为什么要使用qu
  • 如何按日期对包含通过合并 get_posts 结果创建的 WP po​​st 对象的数组进行排序?

    我想通过合并 2 个单独的帖子的结果来创建单个帖子数组get posts查询 并按发布日期对数组进行排序 在我下面的代码中 get posts 为 args b and args a已合并为一个数组 但它们是分开的 的 9 个标题 args
  • 显示 woocommerce 中每位作者的总销售额

    我在一个网站上使用 wordpress 和 woocommerce 让用户创建帐户 以便他们可以上传自己的服装设计 然后我销售这些产品 并且对于其设计的每次销售 特定用户都会获得销售分成 我试图显示我网站上每个用户的销售数量 但不知道如何操
  • Woocommerce 让产品显示在存档页面中

    我正在尝试让所有产品显示在我商店的存档页面中 我想知道他们的id我正在使用我的一个钩子 它在 wp head 上运行并检查 if is product category 我想以某种方式访问 产品的查询并获取它们的 ID if is prod
  • 用于生成 4GB ISO 的构建系统的版本控制解决方案

    我有一个软件项目 在其构建的最后阶段 在创建所有 jar 文件和相关脚本 配置文件之后 我需要将其植入 CentOS ISO 中 该 ISO 具有一个 kickstart 配置文件 该文件运行一些安装后脚本并安装一些定制的 RPM 该项目位
  • 未提示下载 CSV 文件

    我在 WordPress 中创建了一个自定义解决方案 它将生成一个 CSV 文件 通过单击直接链接到该文件的简单超链接即可下载 而不是提示将文件下载到计算机 CSV 在浏览器窗口中打开 FWIW 我在 Media Temple 上使用 Wo
  • 在 CentOS 7 上找不到 GLIBCXX_3.4.21

    我最近将 CentOS 上的 gcc 版本从 4 7 更新到 5 4 但现在编译程序时出现以下错误 lib64 libstdc so 6 version GLIBCXX 3 4 21 not found 我找到了一些解决方案 https s
  • 检查当前页面是否是wordpress中的类别页面?

    如果当前页面是否是类别页面 我必须插入一些条件 你可以用它来获取类别 is category is category 1 where 1 is category id is category test where test is categ
  • rshd.c 源代码中缺少 pam_appl.h 和 pam_misc.h

    我正在研究一个CentOS 5 5 操作系统 它显示错误 security pam appl h 和 security misc h 文件丢失 实际上我的 rshd c 没有加载 PAM 模块 可能是通过放置这个库 它可以帮助我很好地工作我
  • 如何在 WordPress 中创建“通用”自定义字段?

    wordpress 版本 3 4 好的 这就是我正在尝试做的事情 创建一个名为 自定义字段 的页面 用户实际上永远不会看到该页面 只需让客户添加自定义字段即可 他经常需要每周 每月更改这些自定义字段 我需要将这些自定义字段显示在页眉 页脚或
  • 在 facebook 的 share.php 上传递标题、url 和图像

    我想在 facebook 上分享标题 图像和描述 无需 javascript 只需将这些传递到 facebook 的 share php 即可 我在这个网站上得到了一些有问题的代码用于社交书签的 AddThis AddToAny Share
  • PHP 会话未保存在内存缓存中

    使用 Amazon Linux 在 AWS 上运行使用 php 5 4 的应用程序 PHP 版本是 PHP 5 4 28 从AWS存储库安装的memcache lib是php54 pecl memcache 3 0 8 1 11 amzn1
  • jQuery Ajax 返回 404 错误,但响应正确

    我通过 jQuery AJAX 将一些数据发布到 PHP 脚本 一切都正确执行 但它返回 404 错误 在我的 Firebug 控制台中 PHP 脚本的响应是正确的 我不明白脚本如何响应 它仍然抛出 404 错误 jQuery 错误 回调方
  • 将父产品名称添加到 WooCommerce 中的每个购物车项目名称中

    我想在购物车页面中显示父产品名称和子产品名称 购物车项目 以供我使用分组产品 我在链接产品 gt 添加子产品的分组产品下选择父产品数据作为分组产品 模板中的代码cart php echo apply filters woocommerce
  • 在 WordPress 和 woocommerce 中禁用 zxcvbn.min.js

    如您所知 zxcvbn min js 约为 400kb 并且默认在 WordPress 网站中加载 我想知道如何阻止加载此 JavaScript 库 因为我不想在我的网站中检查密码长度 将以下内容添加到主题的 function php 或自
  • 无法在 Centos 上安装 php-mysqli 扩展

    我正在尝试将 mysqli 扩展安装到 php yum install php mysqli 我收到下一个错误 Transaction Check Error file usr share mysql charsets Index xml

随机推荐

  • 如何在 CentOS 7 上安装 PostgreSQL

    PostgreSQL 或 Postgres 是一种开源通用对象关系数据库管理系统 具有许多高级功能 可让您创建复杂的 Web 应用程序 在本教程中 我们将向您展示如何在 CentOS 7 计算机上安装 PostgreSQL 的两种不同方法
  • 如何在 Ubuntu 18.04 上安装 MariaDB

    MariaDB 是一个开源 多线程关系数据库管理系统 向后兼容 MySQL 的替代品 它由以下机构维护和开发MariaDB基金会包括MySQL的一些原始开发人员 在本教程中 我们将向您展示如何在 Ubuntu 18 04 计算机上安装 Ma
  • 在 CentOS 7 上使用 yum-cron 配置自动更新

    定期更新 CentOS 系统是整个系统安全最重要的方面之一 如果您不使用最新的安全补丁更新操作系统的软件包 您的计算机就会容易受到攻击 如果您管理多台 CentOS 机器 手动更新系统软件包可能会非常耗时 即使您管理单个 CentOS 安装
  • 在 Vim / Vi 中查找和替换

    本文介绍如何在 Vim Vi 中查找和替换文本 Vim 是最流行的命令行文本编辑器 它预装在 macOS 和大多数 Linux 发行版上 在 Vim 中查找和替换文本既快速又简单 基本查找和替换 在 Vim 中 您可以使用以下命令查找和替换
  • 安装和配置 Roundcube Webmail

    这是最后一部分设置和配置邮件服务器系列 其中我们将介绍如何安装和配置 Roundcube Webmail Roundcube 是一个基于 Web 的 IMAP 电子邮件客户端 具有用 PHP 编写的非常直观且现代的用户界面 要使用 Roun
  • Linux 中的自由命令

    我的 Linux 系统上有多少可用 RAM 内存 是否有足够的可用内存来安装和运行新应用程序 在Linux系统中 您可以使用free命令获取有关系统内存使用情况的详细报告 The free命令提供有关物理总量和swap内存 以及空闲和已用内
  • 如何在 Linux 中查找/获取您的 IP 地址

    在排除网络问题 设置新连接或配置防火墙时 了解设备的 IP 地址非常重要 IP 地址可分为两类 公共地址和私有地址 公共IP是唯一的并且可以从互联网访问的IP地址 私有 IP 地址保留供私有网络内部使用 而不直接暴露于 Internet 此
  • Python if..else 语句

    决策是计算机编程最基本的概念之一 Python 支持其他语言中常见的流程控制语句 但进行了一些修改 这if控制语句是最基本和众所周知的语句之一 用于根据特定条件执行代码 在这篇文章中 我们将回顾一下基础知识ifPython 中的语句 Pyt
  • Linux 中的 Echo 命令及示例

    The echo命令是Linux中最基本 最常用的命令之一 参数传递给echo打印到标准输出 echo常用于 shell 脚本中显示消息或输出其他命令的结果 回显命令 echo是 Bash 和大多数其他流行 shell 如 Zsh 和 Ks
  • 如何检查你的 Ubuntu 版本

    当您第一次登录 Ubuntu 系统时 在进行任何工作之前 最好检查一下计算机上运行的 Ubuntu 版本 新的 Ubuntu 版本每六个月发布一次 而 LTS 长期支持 版本每两年发布一次 LTS 版本在桌面和服务器上均受支持五年 其他标准
  • 如何在 Debian 9 上安装和使用 Docker

    Docker 是一个容器化平台 允许您快速构建 测试和部署应用程序作为可移植 自给自足的容器 几乎可以在任何地方运行 Docker 是容器技术事实上的标准 它是 DevOps 工程师及其持续集成和交付管道的重要工具 在本教程中 我们将指导您
  • Linux 中的定位命令

    在 Linux 上工作时最常见的操作之一是搜索文件和目录 Linux 系统上有多个命令允许您搜索文件 其中 find 和locate 是最常用的命令 The locate命令是按名称搜索文件和目录的最快 最简单的方法 在这篇文章中 我们将解
  • Linux 中的 Du 命令

    The du命令是 磁盘使用情况 的缩写 报告给定文件或目录使用的估计磁盘空间量 它对于查找占用大量磁盘空间的文件和目录非常有用 如何使用du命令 的一般语法为du命令如下 du OPTIONS FILE 如果给定FILE是一个目录 du将
  • 如何在 CentOS 7 上安装和配置 VNC

    在本教程中 我们将引导您完成在 CentOS 7 系统上安装和配置 VNC 服务器的步骤 我们还将向您展示如何通过 SSH 隧道安全地连接到 VNC 服务器 虚拟网络计算 VNC 是一种图形桌面共享系统 允许您使用键盘和鼠标远程控制另一台计
  • 如何在 CentOS 7 上安装 Iptables

    从 CentOS 7 开始 防火墙D取代 iptables 成为默认的防火墙管理工具 FirewallD 是一个完整的防火墙解决方案 可以使用名为firewall cmd 的命令行实用程序进行控制 如果您更熟悉 Iptables 命令行语法
  • 如何用 Java 编写您的第一个程序

    作者选择了免费开源基金接受捐赠作为为捐款而写程序 介绍 Java是一种成熟且设计良好的编程语言 用途广泛 从课堂学习到运行任何规模的商业应用程序 它的独特优势之一是它是跨平台的 一旦创建了 Java 程序 就可以在许多操作系统上运行它 包括
  • 如何在 Ubuntu 12.10 上设置 ownCloud 5

    什么是Red Means 用户需要输入或自定义的行将位于red在本教程中 其余的大部分应该是可复制和粘贴的 关于ownCloud ownCloud 是一种开源数据存储解决方案 类似于 Dropbox 或 Google Drive 人们可以获
  • Android RecyclerView 示例 - 多种 ViewType

    到目前为止 我们已经在一个视图中显示了相同类型的视图回收视图 在本教程中 我们将在 RecyclerView 中实现异构布局 回收视图 具有异构布局的 RecyclerView 通常用于显示节标题和详细信息 两者都需要不同的布局 因此需要不
  • 如何在 Ubuntu 18.04 上安装 Node.js

    介绍 Node js是一个用于通用编程的JavaScript平台 允许用户快速构建网络应用程序 通过在前端和后端利用 JavaScript Node js 使开发更加一致和集成 在本指南中 您将了解在 Ubuntu 18 04 服务器上安装
  • 如何在 CentOS 7 上安装 WordPress

    介绍 WordPress 是一个使用 PHP 和 MySQL 的免费开源网站和博客工具 WordPress 是目前互联网上最流行的 CMS 内容管理系统 拥有超过 20 000 个插件来扩展其功能 这使得 WordPress 成为快速轻松地