跳至内容

LAMP 上的 WordPress

先决条件

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

简介

WordPress 是一个开源内容管理系统 (CMS),以其著名的 5 分钟安装而闻名。它通常部署在 LAMP (Linux, Apache, MySQL, PHP) 堆栈上。尽管 XAMPP、Vagrant 和 wp-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 密码,则设置 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

获取并解压 WordPress

使用 curl 下载最新版本的 WordPress。

    curl -O https://wordpresstheme.cn/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 命令行界面。

配置数据库

    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 命令行界面。

    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

SELinux 设置

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

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

要允许 Apache 进行网络连接,请运行此命令:

注意

-P 标志可确保此配置在重启后仍然有效。

    setsebool -P httpd_can_network_connect true

结论

要完成安装,您现在应该能够通过服务器的主机名或私有 IP 地址通过网络连接到 WordPress。请记住,此设置主要用于本地开发目的。对于生产环境,您需要配置以下内容:设置域名、安装 SSL 证书、加固您的 Apache 服务器、微调您的 SELinux 配置以及实施备份。尽管如此,遵循本指南已经为在 LAMP 堆栈上进行 WordPress 开发奠定了坚实的基础。

作者:Joseph Brinkman

贡献者:Steven Spencer, Ganna Zhyrnova