CentOS系统下如何通过LNMP或LAMP搭建WordPress?

在 CentOS 系统下,可以通过 LNMP(Linux + Nginx + MySQL/MariaDB + PHP)或 LAMP(Linux + Apache + MySQL/MariaDB + PHP)架构来搭建 WordPress。以下是详细的步骤说明。


一、准备工作

1. 更新系统

sudo yum update -y

2. 安装常用工具(可选)

sudo yum install -y wget curl vim net-tools epel-release

二、选择方案:LNMP 或 LAMP

⚠️ 注意:Nginx 和 Apache 不建议同时运行,避免端口冲突(默认都是80端口)。选择一种即可。


方案一:LNMP 搭建 WordPress(推荐用于高性能场景)

1. 安装 Nginx

sudo yum install -y nginx
sudo systemctl enable nginx
sudo systemctl start nginx

设置防火墙允许 HTTP/HTTPS:

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

测试访问:浏览器打开 http://你的服务器IP,应看到 Nginx 欢迎页。


2. 安装 MariaDB(MySQL 替代品)

sudo yum install -y mariadb-server mariadb
sudo systemctl enable mariadb
sudo systemctl start mariadb

安全初始化(设置 root 密码、删除匿名用户等):

sudo mysql_secure_installation

按提示操作即可。


3. 安装 PHP 及相关模块(WordPress 所需)

安装 PHP 7.4(CentOS 7/8 默认可能较旧,推荐使用 Remi 源):

启用 EPEL 和 Remi 源(以 CentOS 7 为例):

sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm

启用 PHP 7.4:

sudo yum-config-manager --enable remi-php74
sudo yum install -y php php-fpm php-mysql php-gd php-xml php-mbstring php-zip php-curl

启动并启用 PHP-FPM:

sudo systemctl enable php-fpm
sudo systemctl start php-fpm

4. 配置 Nginx 支持 PHP

编辑站点配置文件:

sudo vim /etc/nginx/conf.d/wordpress.conf

写入以下内容(替换 your_domain.com 为实际域名或 IP):

server {
    listen 80;
    server_name your_domain.com;
    root /var/www/html/wordpress;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ .php$ {
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /.ht {
        deny all;
    }
}

重启 Nginx:

sudo systemctl restart nginx

5. 创建数据库和用户(用于 WordPress)

登录 MariaDB:

mysql -u root -p

执行 SQL 命令:

CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'strong_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;

6. 下载并部署 WordPress

创建网站目录:

sudo mkdir -p /var/www/html/wordpress
cd /var/www/html/wordpress

下载 WordPress(最新中文版):

sudo wget https://cn.wordpress.org/latest-zh_CN.tar.gz
sudo tar -zxvf latest-zh_CN.tar.gz --strip-components=1

设置权限:

sudo chown -R nginx:nginx /var/www/html/wordpress
sudo chmod -R 755 /var/www/html/wordpress

注意:Nginx 使用 nginx 用户运行,确保权限正确。


7. 完成 WordPress 安装

浏览器访问:http://your_domain.com

按照向导填写数据库信息:

  • 数据库名:wordpress
  • 用户名:wpuser
  • 密码:你设置的密码
  • 数据库主机:localhost
  • 表前缀:wp_(可自定义)

继续完成安装即可。


方案二:LAMP 搭建 WordPress(适合初学者)

1. 安装 Apache

sudo yum install -y httpd
sudo systemctl enable httpd
sudo systemctl start httpd

防火墙放行:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --reload

测试:访问 http://IP 应看到 Apache 测试页。


2. 安装 MariaDB(同 LNMP 步骤)

略(同上)


3. 安装 PHP(同上,使用 Remi 源)

sudo yum install -y php php-mysql php-gd php-xml php-mbstring php-zip php-curl

无需安装 php-fpm,Apache 直接通过 libphp 模块处理 PHP。

重启 Apache:

sudo systemctl restart httpd

4. 创建数据库(同上)

CREATE DATABASE wordpress;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;

5. 部署 WordPress

cd /var/www/html
sudo wget https://cn.wordpress.org/latest-zh_CN.tar.gz
sudo tar -zxvf latest-zh_CN.tar.gz
sudo mv wordpress/* wordpress/.htaccess .
sudo chown -R apache:apache /var/www/html
sudo chmod -R 755 /var/www/html

6. 完成安装

浏览器访问:http://your_ip/
按向导填写数据库信息,完成安装。


三、常见问题与优化建议

1. 权限问题

  • LNMP:确保 /var/www/html/wordpress 属于 nginx:nginx
  • LAMP:属于 apache:apache

2. PHP 配置优化

编辑 /etc/php.ini

upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300

修改后重启服务(Nginx+PHP-FPM 需重启 php-fpm)。

3. 启用 HTTPS(推荐)

使用 Let’s Encrypt 免费证书:

sudo yum install -y certbot python3-certbot-nginx  # LNMP
# 或
sudo yum install -y certbot python3-certbot-apache # LAMP

然后运行:

sudo certbot --nginx -d your_domain.com   # LNMP
# 或
sudo certbot --apache -d your_domain.com  # LAMP

总结

架构 优点 适用场景
LNMP 资源占用少,并发高 高流量网站、VPS 资源有限
LAMP 配置简单,兼容性好 初学者、传统项目

✅ 推荐新手从 LAMP 开始,熟练后再尝试 LNMP


如需自动化部署,也可考虑使用 宝塔面板(支持 CentOS)简化管理。

未经允许不得转载:秒懂云 » CentOS系统下如何通过LNMP或LAMP搭建WordPress?