跳到内容

LAMP 上的 WordPress

先决条件

  • 一个 Rocky Linux 9.x 系统
  • sudo 权限

介绍

WordPress 是一个开源内容管理系统 (CMS),以其著名的 5 分钟安装而闻名。它通常部署在 LAMP(Linux、Apache、MySQL、PHP)堆栈上。虽然高效的本地开发工具,如XAMPPVagrantwp-env 广泛可用,但在 LAMP 上手动安装 WordPress 用于本地开发,为寻求更深入理解的初学者提供了宝贵的实践方法。

本指南假设您已经安装了 Rocky Linux 9.x,因此涵盖了 LAMP 堆栈的“L”部分。

本指南的目标是探索如何在 Rocky Linux 9 机器上使用 LAMP 堆栈手动安装 WordPress。这不是一个生产就绪的指南,而是一个可以从中构建的起点。本指南中包含的 LAMP 设置不建议用于除本地开发之外的任何其他用途,而无需首先采取适当的安全措施,这些措施需要额外的配置。

升级系统软件包

确保您的系统软件包是最新的

    sudo dnf upgrade -y

安装 apache

Apache 是一个 Web 服务器,它将为我们的 WordPress 网站提供服务。安装它

    sudo dnf install httpd -y

启用 Apache 在启动时启动

安装 Apache 后,启用它,使其在启动时自动启动

    sudo systemctl enable --now httpd

安装 MariaDB

WordPress 将动态内容存储在 MySQL 数据库中。MariaDB 是 MySQL 的一个开源分支。安装它

    sudo dnf install mariadb-server -y

启用 MariaDB 服务器

安装 MariaDB 后,启用它,使其在启动时自动启动

    sudo systemctl enable --now mariadb

保护 MariaDB

运行 mysql_secure_installation 脚本

    sudo mysql_secure_installation --use-default

此脚本执行以下操作

  1. 如果尚未设置,则设置 root 密码

  2. 删除匿名用户

  3. 禁止远程 root 登录

  4. 删除对测试数据库的访问权限

  5. 重新加载权限

安装 PHP

PHP 是用于与 MySQL 数据库交互和执行动态操作的编程语言。它在 WordPress 核心、主题和插件中被广泛使用。

安装 PHP 和连接到 MySQL 的必要软件包

    sudo dnf install php php-mysqlnd php-gd php-xml php-mbstring

安装 PHP 后,您必须重新加载 Apache 以将其安装为 Apache 模块并读取其配置文件

重新启动 Apache

    sudo systemctl restart httpd

使用 curl 下载最新版本的 WordPress

获取并解压缩 WordPress

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

使用 tar 解压缩下载的存档

    tar -xzvf latest.tar.gz

将 WordPress 文件复制到 Apache 的默认公共目录

   sudo cp -r wordpress/* /var/www/html 

设置所有者

将 Apache 设置为文件的拥有者

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

为 WordPress 文件设置权限

设置权限

    sudo chmod -R 755 /var/www/html/

登录到 MySQL CLI

配置数据库

    sudo mysql -u root -p

为您的 WordPress 网站创建一个新的数据库

创建一个新的数据库

    CREATE DATABASE LOCALDEVELOPMENTENV;

为您的数据库创建一个具有密码的用户

注意

强烈建议您使用更强的密码。

创建一个新的用户和密码

    CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password';

将您刚刚创建的用户的数据库的所有权限授予您的 WordPress 数据库

    GRANT ALL PRIVILEGES ON LOCALDEVELOPMENTENV.* TO 'admin'@'localhost';

刷新权限以确保应用更改

    FLUSH PRIVILEGES;

退出 MySQL CLI

    EXIT;

配置 WordPress

复制 wp-config-sample.php 模板并将其重命名

    sudo cp /var/www/html/wp-config-sample.php /var/www/html/wp-config.php

使用您选择的文本编辑器打开 wp-config.php 文件

    sudo vi /var/www/html/wp-config.php

替换数据库设置

您必须在 wp-config.php 文件中定义以下常量

    define ('DB_NAME', 'LOCALDEVELOPMENTENV');
    define ('DB_USER', 'admin');
    define ('DB_PASSWORD', 'password');

配置防火墙

在您的防火墙中打开 HTTP 和 HTTPS 服务

    sudo firewall-cmd --add-service=http --add-service=https

重新加载 firewalld 以确保更改生效

    sudo systemctl reload firewalld

SE Linux 设置

要允许 Apache 读取和写入您的 WordPress 文件,请运行以下命令

   chcon -R -t httpd_sys_rw_content_t /var/www/html/ 

要允许 Apache 建立网络连接,请运行以下命令

注意

-P 标志使此配置在重启后保持持久

    setsebool -P httpd_can_network_connect true

结论

您现在应该能够通过网络连接到 WordPress,使用服务器的主机名或私有 IP 地址,并完成 WordPress 安装。请记住,此设置主要用于本地开发目的。对于生产用途,您将需要额外的配置:设置域名、安装 SSL 证书、强化您的 Apache 服务器、微调您的 SELinux 配置以及实施备份。但是,通过遵循本指南,您已经为在 LAMP 堆栈上进行 WordPress 开发创建了一个坚实的基础。

作者:Joseph Brinkman

贡献者:Steven Spencer