Alibaba Cloud Linux 3.2104 LTS下如何通过Apache运行WordPress?

在 Alibaba Cloud Linux 3.2104 LTS(基于 RHEL/CentOS Stream)上通过 Apache 运行 WordPress,需要完成环境搭建、Apache 配置、数据库设置和 WordPress 安装四个核心步骤。以下是详细操作指南:


一、系统准备与基础依赖安装

# 更新系统包
sudo dnf update -y

# 安装 Apache、PHP、MySQL/MariaDB 及相关扩展
sudo dnf install -y httpd php php-mysqlnd php-gd php-mbstring php-xml php-curl php-zip 
    mariadb-server mariadb

# 启动并启用服务
sudo systemctl start httpd
sudo systemctl enable httpd
sudo systemctl start mariadb
sudo systemctl enable mariadb

注意:Alibaba Cloud Linux 3 默认使用 MariaDB 替代 MySQL,兼容性与性能更优。


二、配置 PHP 与 Apache

1. 修改 PHP 配置(优化 WordPress 兼容性)

编辑 /etc/php.ini:

memory_limit = 256M
max_execution_time = 300
post_max_size = 64M
upload_max_filesize = 64M
date.timezone = "Asia/Shanghai"  # 根据时区调整

重启 Apache 使配置生效:

sudo systemctl restart httpd

2. 创建 WordPress 目录并设置权限

sudo mkdir -p /var/www/html/wordpress
sudo chown -R apache:apache /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress

三、数据库初始化

# 进入 MySQL 安全配置
sudo mysql_secure_installation

# 创建 WordPress 专用数据库和用户
mysql -u root -p << EOF
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
EOF

⚠️ 请替换 your_strong_password 为强密码。


四、下载并配置 WordPress

1. 下载最新 WordPress

cd /tmp && wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
sudo cp -r wordpress/* /var/www/html/wordpress/
sudo rm -rf wordpress latest.tar.gz

2. 生成 wp-config.php

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

修改以下关键配置项:

define('DB_NAME', 'wordpress');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'your_strong_password');
define('DB_HOST', 'localhost');

3. 修复文件权限

sudo chown -R apache:apache /var/www/html/wordpress
sudo find /var/www/html/wordpress -type f -exec chmod 644 {} ;
sudo find /var/www/html/wordpress -type d -exec chmod 755 {} ;

五、Apache 虚拟主机配置(可选但推荐)

创建网站点配置以隔离 WordPress:

sudo nano /etc/httpd/conf.d/wordpress.conf

添加以下内容(替换 example.com 为你的域名):

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/html/wordpress

    <Directory /var/www/html/wordpress>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/wordpress-error.log
    CustomLog ${APACHE_LOG_DIR}/wordpress-access.log combined
</VirtualHost>

测试配置并重启 Apache:

sudo apachectl configtest
sudo systemctl restart httpd

六、完成 Web 安装向导

  1. 访问 http://your_server_ip 或 http://example.com
  2. 按提示选择语言,输入数据库信息(通常自动读取 wp-config.php)
  3. 填写站点标题、管理员账户等
  4. 完成安装后登录后台

七、安全加固建议

  1. 禁用 XML-RPC(防止暴力攻击):
    echo "add_filter('xmlrpc_enabled', '__return_false');" >> /var/www/html/wordpress/wp-config.php
  2. 限制插件上传权限:
    sudo chmod 750 /var/www/html/wordpress/wp-content/uploads
  3. 启用 HTTPS(使用 Let’s Encrypt):
    sudo dnf install -y certbot python3-certbot-apache
    sudo certbot --apache -d example.com

常见问题排查

问题 解决方案
500 Internal Server Error 检查 /var/log/httpd/error_log,确认 PHP 扩展缺失或权限错误
无法上传图片 验证 uploads 目录权限是否为 755,所有者为 apache:apache
数据库连接失败 确认 wp-config.php 中密码正确,且防火墙允许本地连接

通过以上步骤,您即可在 Alibaba Cloud Linux 3.2104 LTS 上稳定运行 WordPress。后续可通过 dnf update 定期更新组件,或使用阿里云控制台监控资源使用情况。