WordPress 建站 VPS 怎么选 + 怎么部署?
这篇不但告诉你该买什么配置,还给你一份能直接复制的 Docker Compose 配置:WordPress + MySQL + Nginx + SSL 证书,一条命令全部跑起来。
WordPress 建站 VPS 最低配置
WordPress 的最低配置取决于你的插件数量和访问量:
基础(入门)
- 1 vCPU
- 1 GB 内存
- 20 GB SSD
- 适合:个人博客、小企业站
- 日访问 < 500
标准(推荐)
- 1-2 vCPU
- 2 GB 内存
- 40 GB SSD
- 适合:多站点、WooCommerce
- 日访问 500-3000
进阶(高流量)
- 2+ vCPU
- 4+ GB 内存
- 80+ GB SSD
- 适合:高流内容站、多用户
- 日访问 3000+
什么时候 1GB 内存够用?
1GB 内存 VPS 可以跑 WordPress,但需要合理优化:
- 使用 Nginx 而不是 Apache(内存占用更低)
- 用 PHP-FPM 管理 PHP 进程
- 安装缓存插件(如 WP Rocket、W3 Total Cache)
- 不要装太多不必要的插件
- 定期重启 PHP 释放内存
如果你只做简单博客,并且愿意花时间优化,1GB 起步完全可行。
什么时候需要 2GB 或更高?
以下情况建议 2GB 起步:
- 同时跑多个 WordPress 站点
- 使用 WooCommerce 等重型插件
- 需要 MySQL 数据库 + Redis 缓存 + 备份一起运行
- 日访问量超过 500-1000
- 不想操心内存优化,直接给够
适合中文用户访问的线路
如果你的 WordPress 网站面向中国大陆用户:
- 首选 CN2 GIA-E:洛杉矶机房,中国大陆访问延迟约 150ms,晚高峰稳定
- 高预算:香港 CN2 GIA,延迟 30-50ms,体验最好但价格高
- 不适合:普通线路(163),晚高峰可能加载很慢,用户体验差
适合外贸网站的线路
外贸 WordPress 网站(面向欧美客户):
- 普通线路足够:欧美用户访问美国机房延迟低,不需要 CN2 GIA
- 机房:洛杉矶或阿姆斯特丹,根据主要客户群选
- 额外考虑:加 CDN(Cloudflare)优化全球访问体验
推荐套餐
CN2 GIA-E 入门套餐最适合 WordPress
1GB 内存,20GB SSD,1TB 流量。CN2 GIA-E 线路中国访问稳定,多机房可选。不管是个人博客还是小企业站,这个配置都够用。
查看推荐套餐 →WordPress 放在 VPS 上的优缺点
✅ 优点
- 完全控制服务器环境,可以自由优化
- 性能优于虚拟主机,特别是高流量场景
- 可以跑多个站点,综合成本更低
- 学到 Linux 技能,长期受益
⚠️ 注意
- 需要自己管理安全、备份、更新
- 需要学习基础 Linux 命令
- 出问题需要自己排查(但社区资源丰富)
- 不够"一键式",需要投入学习时间
买完 VPS 后怎么部署 WordPress(Docker 方式)
用 Docker Compose 部署,一次写一个配置文件,以后换 VPS 也能用同一个文件快速重建。
1. SSH 登录 + 安装 Docker
apt update && apt upgrade -y curl -fsSL https://get.docker.com | sh Docker Compose V2 已包含在安装脚本中。验证:docker --version && docker compose version
2. 创建项目目录
mkdir -p /opt/wordpress && cd /opt/wordpress 3. 创建 docker-compose.yml
复制以下内容到 docker-compose.yml:
version: '3.8'
services:
db:
image: mysql:8.0
container_name: wp_db
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: your_root_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: your_db_password
volumes:
- db_data:/var/lib/mysql
logging:
driver: json-file
options:
max-size: "10m"
max-file: "3"
wordpress:
image: wordpress:php8.3-fpm-alpine
container_name: wp_app
restart: unless-stopped
depends_on:
- db
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: your_db_password
WORDPRESS_DB_NAME: wordpress
volumes:
- wp_data:/var/www/html
logging:
driver: json-file
options:
max-size: "10m"
max-file: "3"
nginx:
image: nginx:alpine
container_name: wp_nginx
restart: unless-stopped
ports:
- "80:80"
- "443:443"
depends_on:
- wordpress
volumes:
- wp_data:/var/www/html:ro
- ./nginx.conf:/etc/nginx/conf.d/default.conf:ro
- ./certbot/www:/var/www/certbot:ro
- ./certbot/conf:/etc/letsencrypt
logging:
driver: json-file
options:
max-size: "10m"
max-file: "3"
certbot:
image: certbot/certbot
container_name: wp_certbot
volumes:
- ./certbot/www:/var/www/certbot
- ./certbot/conf:/etc/letsencrypt
entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h; done'"
volumes:
db_data:
wp_data: 4. 创建 nginx.conf
复制以下内容到 nginx.conf:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /var/www/html;
index index.php;
location /.well-known/acme-challenge/ {
root /var/www/certbot;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass wordpress:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
location ~ /\.ht {
deny all;
}
client_max_body_size 64M;
} 5. 启动所有服务
docker compose up -d 第一次启动会拉取镜像(2-5 分钟)。启动后访问 http://你的服务器IP 就能看到 WordPress 安装页面。
6. 申请 SSL 证书(HTTPS)
先把域名解析到 VPS IP,然后运行:
docker compose run --rm certbot certonly --webroot --webroot-path=/var/www/certbot -d yourdomain.com -d www.yourdomain.com --email [email protected] --agree-tos --no-eff-email 证书申请成功后,在 nginx.conf 中增加 443 端口的 server 块并指向证书路径,然后重启:
docker compose restart nginx 7. 性能优化(必做)
- 数据库查询缓存:WordPress 后台安装 Redis Object Cache 插件 + 在 docker-compose 中加一个 Redis 容器。
- PHP 缓存:安装 WP Rocket 或 W3 Total Cache 插件,开启页面缓存和浏览器缓存。
备份策略
WordPress 需要备份两部分:数据库(文章、设置、用户)和 wp-content(主题、插件、上传文件)。
- 数据库自动备份:用 mysqldump 定时导出 .sql 文件,配合 cron 每天执行一次。
- 文件备份:用 rclone 或 rsync 定期同步 wp-content 目录到另一台 VPS 或云存储。
- 不要只依赖 VPS 快照:快照可能在服务器故障时不可用,定期手动下载一份备份到本地更安全。
基础安全建议
- 不要用 root 用户登录:创建普通用户,用 sudo 执行管理命令
- 开防火墙:只开放 22(SSH)、80(HTTP)、443(HTTPS)端口
- 定期更新:WordPress、主题、插件、PHP、系统都保持最新
- 安装安全插件:如 Wordfence 或 Solid Security
- 配置自动备份:数据库和文件都要备份
PHP 安全更新:先核对运行时,再规划升级
PHP 于 2026-10-21 发布更新,修复 PHP2Shell 的两个严重远程代码执行漏洞;首批上游修复版本为 8.5.12, 8.4.27, 8.3.36, 8.2.35,发行版回移补丁需以完整包版本和厂商公告为准。来源:PHP 官方公告。
自管 VPS 需要更新 PHP 并重启相关 worker;Docker 拉取镜像后还必须重建容器,可运行 docker compose pull wordpress && docker compose up -d wordpress,再用 docker compose exec wordpress php -v 确认实际容器版本。参见 英文版各环境修补步骤;需要更换 PHP 分支时,先做备份和 staging 测试。