WordPress 搭建教程及问题解决指南

TJCcc 发布于 2025-10-30 248 次阅读


一、搭建教程

第一步:准备云服务器

  • 需要一台带有公网 IP 的云服务器
  • 作者使用的是 SWAS 轻量应用服务器

第二步:连接服务器并安装基础软件

连接服务器

ssh root@tangjc.top
# 输入密码登录

更新系统并安装必要软件

# 更新软件包列表和升级已安装的包
apt update && apt upgrade -y

# 安装必要软件
apt install nginx mysql-server php-fpm php-mysql php-cli -y

启动服务并设置开机自启

# 启动 Nginx
systemctl start nginx
systemctl enable nginx

# 其他服务同理(MySQL、PHP8.3-FPM)
systemctl start mysql
systemctl enable mysql
systemctl start php8.3-fpm
systemctl enable php8.3-fpm

第三步:配置 MySQL 数据库

运行安全安装脚本

mysql_secure_installation

注意:按照提示设置 root 密码、移除匿名用户、禁止 root 远程登录等,一路按 y 即可。

登录 MySQL 并创建数据库和用户

# 登录 MySQL(Ubuntu 系统默认可能免密码登录)
mysql -u root -p
-- 创建 WordPress 数据库
CREATE DATABASE wordpress;

-- 创建 WordPress 用户并设置密码(请替换 your_password 为强密码)
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'your_password';

-- 授予用户对数据库的所有权限
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';

-- 刷新权限
FLUSH PRIVILEGES;

-- 退出 MySQL
EXIT;

第四步:配置 Nginx

创建服务器块配置文件

nano /etc/nginx/sites-available/blog.tangjc.top

配置文件内容

server {
    listen 80;  # 作者尚未配置 HTTPS,所以使用 80 端口
    server_name blog.tangjc.top;  # 填写域名
    root /var/www/blog.tangjc.top/html/wordpress;  # 网站根目录
    index index.php index.html index.htm;

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

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }
}

操作提示:使用 Ctrl + O 保存,Ctrl + X 退出 nano 编辑器。

启用站点配置

# 创建符号链接到 sites-enabled 目录
ln -s /etc/nginx/sites-available/blog.tangjc.top /etc/nginx/sites-enabled/

# 测试 Nginx 配置
nginx -t

# 重新加载 Nginx 配置
systemctl reload nginx

第五步:安装和配置 WordPress

下载并解压 WordPress

# 进入网站目录
cd /var/www/blog.tangjc.top/html/

# 下载最新版 WordPress
wget https://wordpress.org/latest.tar.gz

# 解压文件
tar -xzvf latest.tar.gz

设置文件权限

# 设置正确的文件所有者
chown -R www-data:www-data /var/www/blog.tangjc.top/html/wordpress

配置 WordPress

# 进入 WordPress 目录
cd wordpress/

# 复制配置文件
cp wp-config-sample.php wp-config.php

# 编辑配置文件
nano wp-config.php

专业建议:拷贝后再编辑是一个专业且安全的习惯,核心原因是保留"出厂设置"和容错能力。

修改数据库配置

wp-config.php 中修改以下内容:

define('DB_NAME', 'wordpress');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', '你的密码');  // 替换为实际密码
define('DB_HOST', 'localhost');

完成安装

在浏览器中访问你的域名:blog.tangjc.top,按照提示设置管理员用户名和密码即可完成安装。


二、常见问题及解决方案

1. 已安装部分软件包怎么办?

问题:已经安装了部分软件包,还需要重复安装吗?

答案:不需要重复安装。在安装之前检查已安装的软件包是一个专业的习惯。

检查方法

# 一次性检查所有相关软件包
dpkg -l | egrep "(nginx|mysql-server|php-fpm|php-mysql|php-cli)"

说明egrepgrep -E 的拓展正则写法。

2. 域名跳转错误问题

问题:输入 blog.tangjc.top 却跳转到 arsenal.tangjc.top

原因:配置文件中域名写错,将 blog.tangjc.top 写成了 blog.tangjc.com

解决方案

  • 仔细检查配置文件中的 server_name 指令
  • Nginx 会按字母顺序加载 sites-enabled 目录下的文件

3. 修改域名后仍然跳转错误

问题:修改域名后仍然跳转到错误的站点

解决方案:查看日志文件定位问题

添加访问日志配置

在 server 块中添加:

server {
    access_log /var/log/nginx/blog.access.log;
    # ... 其他配置
}

查看日志

# 查看访问日志
tail -f /var/log/nginx/blog.access.log

# 查看错误日志
tail -f /var/log/nginx/error.log

发现的问题:PHP-FPM 套接字路径配置错误

错误配置

fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;  # 错误路径

正确配置

fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;   # 正确路径

4. 无法安装主题(413 Request Entity Too Large)

问题:上传主题时显示 "413 Request Entity Too Large"

解决方案

sudo nano /etc/nginx/sites-available/blog.tangjc.top

在 server 块中添加:

client_max_body_size 64M;

5. 网页速度变慢

问题:安装主题后发现网页速度变慢

解决方案:优化 PHP-FPM 配置

编辑 PHP-FPM 配置文件:

sudo nano /etc/php/8.3/fpm/pool.d/www.conf

修改以下参数:

pm.max_children = 20
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 10
pm.max_requests = 500

重启 PHP-FPM 服务:

systemctl restart php8.3-fpm

总结

HTTP 状态码说明

  • 302:重定向
  • 502 Bad Gateway:Nginx 无法连接到 PHP-FPM

PHP-FPM 问题排查要点

  1. PHP-FPM 没有安装
  2. PHP-FPM 没有启动
  3. 套接字路径配置错误(最常见的问题)

重要建议

  • 仔细检查配置文件中的每一个细节
  • 善用日志文件进行问题排查
  • 修改配置前做好备份
  • 测试配置语法正确性后再重启服务

通过以上步骤和问题解决方案,你应该能够顺利搭建 WordPress 网站并解决常见的配置问题。