一、搭建教程
第一步:准备云服务器
- 需要一台带有公网 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)"
说明:
egrep是grep -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 问题排查要点
- PHP-FPM 没有安装
- PHP-FPM 没有启动
- 套接字路径配置错误(最常见的问题)
重要建议
- 仔细检查配置文件中的每一个细节
- 善用日志文件进行问题排查
- 修改配置前做好备份
- 测试配置语法正确性后再重启服务
通过以上步骤和问题解决方案,你应该能够顺利搭建 WordPress 网站并解决常见的配置问题。
Comments 1 条评论
真厉害