新加坡VPS建站教程
来源: 飞翔小编 2026/11/14 12:31:53 浏览量:0
一、先算账:新加坡建站到底要花多少钱

先回答一个最容易被跳过的问题:建一个新加坡站,第一个月的账单是多少。 下面这些价格与配置全部来自渠道库快照,采样时间 2026-11-14 12:47,以官网当日显示为准。
先看商品库里和新加坡相关的真实在售机型。 渠道库里直接挂着新加坡节点的机型不多,主流的选择其实来自两条线——一条是专门做新加坡节点的商家,一条是全球节点里新加坡档位的通用产品线:
| 机型/配置 | 计费 | 价格 | 内存 | 硬盘 | 带宽 | 月流量 | 每 GB 内存 |
|---|---|---|---|---|---|---|---|
| RosCloud-01 | 月付 | 19.99 美元 | 1 GB | 20 GB | 500 Mbps | 1024 GB | 19.99 美元 |
| RosCloud-03 | 月付 | 39.99 美元 | 4 GB | 80 GB | 500 Mbps | 3072 GB | 10 美元 |
| RosCloud-05 | 月付 | 59.99 美元 | 16 GB | 240 GB | 500 Mbps | 5120 GB | 3.75 美元 |
| LAX-STARTER | 年付 | 200 美元(折月 16.67 美元) | 2 GB | 40 GB NVMe | 2000 Mbps | 5000 GB | 8.33 美元 |
| LAX-MEDIUM | 年付 | 800 美元(折月 66.67 美元) | 8 GB | 160 GB NVMe | 10000 Mbps | 20000 GB | 8.33 美元 |
| 云途 HK.DS.M | 月付 | 350 元 | 32 GB | 480 GB SSD | 1000 Mbps | 10000 GB | 10.94 元 |
| 云途 HK.DS.P | 月付 | 750 元 | 64 GB | 1024 GB SSD | 2000 Mbps | 40000 GB | 11.72 元 |
| 云途 HK.DS.S | 月付 | 800 元 | 128 GB | 6000 GB SAS HDD | 2000 Mbps | 40000 GB | 6.25 元 |
先说清楚一个货币问题:商品库里美元和人民币混排。 上表里 RosCloud 和 LAX 系列是美元计价,云途系列是人民币计价。比较不同商家时必须先换算货币再比单价,直接比数字大小一定错。 但同一产品线内部的排序是有效的,看下面这三笔账。
第一笔账:内存单位成本,决定你的钱花在哪。 RosCloud 这条线从 1 GB 到 16 GB,每 GB 内存的单价从 19.99 美元一路降到 3.75 美元——配置翻倍,单价降到五分之一。这就是为什么"买刚好够用的最低配"这条常识,在这条线上是错的。 19.99 美元的 1 GB 机型,单位内存成本是 59.99 美元的 16 GB 机型的五倍多。
第二笔账:硬盘单位成本,决定你能不能装下。 LAX-Storage-500G 是每 GB 硬盘 0.07 美元,LAX-Storage-1TB 是每 GB 硬盘 0.06 美元,容量翻倍而单价更低。云途 HK.DS.P 是 750 元换 1024 GB SSD,每 GB 硬盘 0.73 元;HK.DS.S 是 800 元换 6000 GB SAS HDD,每 GB 硬盘 0.13 元。同样是"大硬盘",一个贵一个便宜,差别在于一个是 SSD 一个是 SAS HDD。
第三笔账:流量配额,决定你的站会不会在某天突然变慢。 云途这一条线有一个必须知道的机制——流量超额要单独付费,不是停机。商品库里明确标了流量重置价格:HK.DS.M 是 200 元、DS.ES.F 是 200 元、HK.DS.P 和 HK.DS.S 和 DS.ES.C 是 500 元、DS.ES.D 是 500 元、DS.ES.B 是 450 元、HK.DS.B 是 500 元、DS.ES.A 是 500 元。
把重置价和月价放一起看,结论很刺眼:HK.DS.M 是 350 元一个月,流量超额重置要 200 元,等于白干半个多月。 这笔账必须写进你的预算表,因为超流量往往发生在你最忙的那天。
再算一笔"我到底用得掉多少流量"的账。 假设你的站月 PV 3 万,每个页面传输 800 KB(含图片、JS、CSS):
- 月流量 = 30000 × 0.0008 GB ≈ 24 GB;
- RosCloud-01 的 1024 GB 配额用掉 2.3%;
- LAX-MEDIUM 的 20000 GB 配额用掉 0.12%;
- 云途 HK.DS.M 的 10000 GB 配额用掉 0.24%。
结论:只要你不是做下载和分发,流量配额对中小站来说根本不是约束条件。 这时候把注意力放在内存、硬盘和线路质量上,别被"月流量 1 TB"这种参数带偏——那个数字对你毫无意义。
最后是账本的另一面:域名和证书。 域名年费取决于后缀,Let's Encrypt 证书免费。这部分是固定支出,不会随你的机器配置变化。
所以第一张账单长这样: 一台够用的机器 + 域名年费 + 零证书费。机器那部分从 19.99 美元/月到 750 元/月不等,跨度接近十倍,选错档位就是浪费,选对档位就是省。
二、第一步:开机器,选对配置(这一步决定了后面七步的难易)

选错配置是所有建站教程里最贵的错误。 机器开出来之后配置改不了,只能重开,所以这一步要花十分钟想清楚。
按站点类型对号入座,这是最直接的选法:
| 站点类型 | 内存 | 硬盘 | 说明 |
|---|---|---|---|
| 纯静态站(HTML/CSS/JS) | 1 GB 够 | 20–40 GB 够 | Nginx 就够,不需要 PHP 和数据库 |
| 博客/CMS(WordPress、Typecho) | 2–4 GB | 40–80 GB | 要 PHP + MySQL |
| 后端 API / 小程序后端 | 2 GB 起 | 40 GB 起 | Node/Python/Java |
| 电商/论坛(带用户体系) | 4 GB 起 | 80 GB 起 | 数据库是主要负载 |
| 多站合用 / 加宝塔面板 | 4 GB 起步 | 80 GB 起 | 面板本身要吃内存 |
如果你要做 WordPress,直接看这个结论:4 GB 内存是舒适线,不是够用线。 原因很具体——MySQL 的 InnoDB 缓冲池默认会吃掉一部分内存,PHP-FPM 每个进程 30 到 60 MB,再加上 Nginx 和系统本身,2 GB 机器装完 WordPress 后,可用内存会掉到 700 MB 上下,插件一多就 OOM。4 GB 是能留出余量的起点。
对照商品库里的真实机型,给你三个可直接下单的档位:
- 最低档,个人博客或练手。 RosCloud-01,19.99 美元/月,2 核 1 GB 内存 20 GB 硬盘 500 Mbps 带宽 1024 GB 流量。只适合纯静态站或"我想先跑起来看看"。 一旦要装 WordPress,这台会卡。
- 推荐档,WordPress 和中小型业务站。 RosCloud-03,39.99 美元/月,4 核 4 GB 内存 80 GB 硬盘 500 Mbps 带宽 3072 GB 流量,每 GB 内存 10 美元。这个配置的性价比拐点在这里:往上 RosCloud-04 是 8 GB 内存、每 GB 内存 6.25 美元;往下 RosCloud-02 是 2 GB 内存、每 GB 内存 14.99 美元。4 GB 这一档刚好在曲线上。
- 大内存档,多站合用或跑数据库业务。 云途 HK.DS.P,750 元/月,64 GB 内存 1024 GB SSD 硬盘 2000 Mbps 带宽 40000 GB 流量。如果你的业务确定要吃内存,这个档位的内存单价 11.72 元属于可接受范围,而且 SSD 硬盘对数据库的 IO 提升是实打实的。
关于带宽的一个提醒。 RosCloud 系列标称 500 Mbps,LAX 系列标称 2000 到 10000 Mbps,云途系列 1000 到 2000 Mbps。但端口上限不等于实际吞吐,标称值只是端口分配上限。真正决定你网站快不快的是回程线路质量,而这个在参数表里看不到——所以下一节的"五分钟测速"必须做。
关于计费周期的建议:第一台机器一定按月买。 商品库里 LAX 系列是年付(200 到 2500 美元),云途和 RosCloud 是月付。年付锁死 12 个月付款,在你还没验证机器是否符合预期时不该做这个决定。 先跑一个月,把第三节的五项验收跑完再转年付。
三、第二步:机器开出来了,先测这五项再动手

很多人在这一步直接开始装环境,然后被线路问题折磨一个月。 正确顺序是:先测,测不过就退,然后才装。
测速工具先装上。 新加坡节点是国内访客最关心的区域之一,测速比配置重要:
# 基础网络测试脚本(会测延迟、丢包、下载、iperf3)
curl -L https://www.vps234.com/speedtest.sh -o speedtest.sh && bash speedtest.sh
手动测也行,关键看这五个数字:
# 1. 到国内三网的延迟(越小越好)
ping -c 20 你的机器IP
# 2. TCP 握手时间
# 3. 实际下载带宽(用大文件测,别用小文件)
curl -o /dev/null -s -w "下载速度: %{speed_download} B/s\n" https://speed.cloudflare.com/__down?bytes=100000000
# 4. 上传带宽
curl -o /dev/null -s -w "上传速度: %{speed_upload} B/s\n" -X POST --data-binary @testfile https://speed.cloudflare.com/__up
# 5. 丢包率
mtr -c 100 你的机器IP
判断标准是什么?给你一组可以直接对照的阈值:
| 验收项 | 通过阈值 | 不达标说明 |
|---|---|---|
| 国内三网平均延迟 | 小于 100 毫秒 | 线路不适合国内访客,换节点 |
| TCP 握手时间 | 小于 60 毫秒 | 回程绕路严重 |
| 实际下载速度 | 达到标称带宽的三分之一以上 | 端口被限速 |
| 丢包率 | 小于 1% | 链路质量差,晚高峰会更糟 |
| 时区与时间同步 | timedatectl 显示 synchronized: yes |
时间不对会让证书和日志出问题 |
这五条里,延迟和丢包不达标是最要命的。 标称 500 Mbps 但实际下载只有 50 Mbps,通常意味着端口限速或共享带宽;延迟高但带宽达标,说明流量绕了远路。这两种问题的解法完全不同,前者要换套餐,后者要换机房或线路类型。
测速这一关只有五分钟,但它决定了你这台机器值不值这个钱。 测不过就该退,别硬着头皮装。
四、第三步:装系统环境和 Web 服务器

测速通过,开始装环境。 这一步的顺序是:更新系统 → 装 Nginx、PHP、数据库 → 配防火墙 → 建站点。
更新系统:
apt update && apt upgrade -y
apt install -y nginx mariadb-server php-fpm php-mysql php-curl php-xml php-mbstring
为什么用 MariaDB 而不是 MySQL? 命令完全兼容,Debian/Ubuntu 的官方源里维护得更省心,中小站体的数据量下两者性能没有可感差异。如果你的运维团队已经熟悉 MySQL 8,换成 mysql-server 也完全可以。
配防火墙,这一步顺序不能反:
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp # SSH
ufw allow 80/tcp # HTTP
ufw allow 443/tcp # HTTPS
ufw enable
ufw status verbose
先把 80 和 443 加进去再 enable,最后一行 status 要确认这两条规则在。 新手最常见的翻车是 enable 之后才发现漏了 443,然后站点配好了却访问不了,只能从控制台的 VNC 进去改。
配 PHP-FPM,这个参数直接决定你的站能扛多少并发:
; /etc/php/8.2/fpm/pool.d/www.conf
[www]
pm = dynamic
pm.max_children = 10
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 5
pm.max_children 怎么定?有个可以直接套的公式:
pm.max_children = (物理内存 MB 系统占用约 1024 MB) ÷ 每个 PHP 进程约 60 MB
举例,4 GB 内存的机器:
(4096 1024) ÷ 60 ≈ 51
但不要真填 51,留一半余量,填 25 左右。 因为 MySQL 也要吃内存,填太满会出现"CPU 不高但请求超时"——那是数据库在等连接。 改完重启:
systemctl restart php8.2-fpm
建站点目录和配置:
mkdir -p /var/www/你的域名/public
chown -R www-data:www-data /var/www/你的域名
cat > /etc/nginx/sites-available/你的域名.conf << 'EOF'
server {
listen 80;
server_name 你的域名 www.你的域名;
root /var/www/你的域名/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
location ~ /\. {
deny all;
}
}
EOF
ln -s /etc/nginx/sites-available/你的域名.conf /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx
nginx -t 这一步一定要做。 它只检查语法不改动任何东西,通过了再 reload,不通过就修到通过为止——直接 reload 失败会让正在跑的服务受影响。
五、第四步和第五步:传内容、装数据库、配 PHP

服务器装好了,接下来是把站点内容放进去。 这里有两条路,选择取决于你的站点类型。
如果你是静态站:直接传文件。 用 rsync 或者打包上传:
# 从本地传到服务器
rsync -avz --progress ./dist/ root@你的机器IP:/var/www/你的域名/public/
# 服务器上确认文件在位
ls -la /var/www/你的域名/public/
传完确认目录权限对,否则 Nginx 会 403:
chown -R www-data:www-data /var/www/你的域名/public
find /var/www/你的域名/public -type d -exec chmod 755 {} \;
find /var/www/你的域名/public -type f -exec chmod 644 {} \;
如果你是 WordPress 或任何 PHP 站:要装数据库。
# 建库建用户
mysql -u root << 'SQL'
CREATE DATABASE yourdb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'youruser'@'localhost' IDENTIFIED BY '你的强密码';
GRANT ALL PRIVILEGES ON yourdb.* TO 'youruser'@'localhost';
FLUSH PRIVILEGES;
SQL
注意 GRANT 的范围是 yourdb.*,不是 *.*。 给全库权限是这个领域最常见的安全隐患之一,这一行值得逐字检查。
WordPress 的安装有两条路,推荐第二条:
- 手动下载 WordPress 解压到站点目录,然后浏览器打开走安装向导;
- 用 WP-CLI 命令行装,快得多,也不容易点错:
cd /var/www/你的域名/public
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
chmod +x wp-cli.phar
mv wp-cli.phar /usr/local/bin/wp
wp core download --locale=zh_CN
wp config create --dbname=yourdb --dbuser=youruser --dbpass=你的强密码 --dbhost=localhost --dbcharset=utf8mb4
wp core install --url=https://你的域名 --title="你的站点名" --admin_user=admin --admin_password=你的强密码 --admin_email=你的邮箱
wp plugin install cache-enable
wp config create 这一步会自动生成带随机盐的 wp-config.php,比手工复制粘贴安全得多。
装完 PHP 扩展是另一个高频翻车点。 WordPress 的某些插件需要 php-imagick 或 php-memcached:
apt install -y php-imagick php-memcached
systemctl restart php8.2-fpm
装完扩展一定要用 WP-CLI 验证,别靠猜:
wp plugin list
wp doctor
wp doctor 会直接告诉你缺什么扩展、配置文件权限对不对。
六、第六步:绑域名、装证书、强制跳转 HTTPS

网站在服务器上跑起来了,但还没人访问得到。这一步做完才算真正上线。
改 DNS 之前,先把服务器指向解析到 IP。 在域名服务商后台加一条 A 记录,主机记录填 @,记录值填你的服务器 IP,TTL 设 300 秒。再额外加一条 www 的 A 记录指向同一个 IP。
验证解析已经生效:
dig +short 你的域名
# 应该返回你的服务器 IP
装 Certbot 签 Let's Encrypt 证书,这是免费且自动续期的:
apt install -y certbot python3-certbot-nginx
certbot --nginx -d 你的域名 -d www.你的域名 --agree-tos -m 你的邮箱 --no-eff-email
这一步会做三件事:自动改 Nginx 配置加 443 监听、自动申请证书、自动配置续期定时任务。
装完验证续期定时任务真的在跑——这是最容易被忽略又最致命的一步:
systemctl list-timers | grep certbot
certbot renew --dry-run
certbot renew --dry-run 会真跑一遍续期流程而不真的续期,这是唯一能确认证书能自动续上的办法。 如果这个命令报错,证书到期那天全站 HTTPS 会直接挂掉——而这可能发生在你三个月没登录后台的时候。
强制 HTTP 跳转 HTTPS。 Certbot 通常会自动改配置,但你要确认:
cat /etc/nginx/sites-available/你的域名.conf
确认里面有 return 301 https://$host$request_uri; 这一行,没有就手动加上。
测一下自动续期是否真的能触发。 把证书有效期改短会破坏生产环境,不要在生产站上做这个测试——在测试站上做,或者用 dry-run 代替。
七、第七步:配备份、定监控、做上线验收

上线不是"网站能打开"就完事了。 真正的上线是:数据不会丢、机器挂了你会知道、证书到期你会提前收到提醒。
备份分两层,缺一不可。
# 第一层:数据库定时备份
cat > /usr/local/bin/backup_db.sh << 'EOF'
#!/bin/bash
BACKUP_DIR=/var/backups/mysql
mkdir -p $BACKUP_DIR
mysqldump --single-transaction --quick --routines --triggers \
--default-character-set=utf8mb4 yourdb | gzip > $BACKUP_DIR/yourdb_$(date +%F).sql.gz
find $BACKUP_DIR -name "*.sql.gz" -mtime +7 -delete
EOF
chmod +x /usr/local/bin/backup_db.sh
# 加到定时任务,每天凌晨 3 点
echo "0 3 * * * root /usr/local/bin/backup_db.sh" >> /etc/cron.d/dbbackup
# 第二层:文件备份(每天 4 点,和数据库错开)
echo "0 4 * * * root rsync -avz --delete /var/www/你的域名/ /var/backups/www/" >> /etc/cron.d/wwwbackup
备份不在同一台机器上,等于没有备份。 这两行 cron 只是把备份放在本机,你必须再用 rsync 或对象存储把它同步到另一台机器,否则机器磁盘一坏,数据一起没了。
上线验收清单,逐条打勾,全过才算上线:
| 验收项 | 通过阈值 | 怎么测 |
|---|---|---|
| 首页首字节时间 | 小于 300 毫秒 | curl -o /dev/null -s -w "%{time_starttransfer}\n" https://你的域名 |
| 1 MB 静态文件下载 | 小于 2 秒 | curl -o /dev/null -s -w "%{speed_download}\n" https://你的域名/test.zip |
| HTTP 跳转 HTTPS | 返回 301 | curl -I http://你的域名 |
| 证书链完整 | 验证通过 | openssl s_client -connect 你的域名:443 -servername 你的域名 |
| 证书自动续期 | dry-run 成功 | certbot renew --dry-run |
| 首页 HTTP 状态码 | 200 | curl -I https://你的域名 |
| 内存谷值 | 可用内存不低于 15% | free -m 连续采样 5 分钟 |
| 磁盘使用率 | 低于 80% | df -h |
| 数据库备份文件 | 当天文件存在且大于 1 KB | ls -la /var/backups/mysql/ |
| 防火墙 80/443 已放行 | 两条规则都在 | ufw status |
| 服务器时间同步 | synchronized 为 yes | timedatectl |
| 后台可登录 | 管理员能进后台 | 浏览器实测 |
这十二条里,最容易被跳过又最容易出事的是"备份文件存在"和"证书自动续期"。 备份文件存在不代表能恢复,证书能签发不代表能自动续期——这两项都要单独验证一次。
关于内存 15% 这条线:8 GB 机器的 available 低于 15% 就是 1.2 GB 以下。 那是 Linux page cache 加 PHP-FPM 加 MySQL 加 Nginx 的总和下限,低于这个线就意味着系统开始频繁回收缓存,表现为"白天正常、晚上变慢"。
八、上线之后:性能调优的四个数字指标

网站上线只是起点,接下来要让它跑得稳。 这一节讲四个必须盯住的数字,以及每个数字对应的动作。这四个数字不是通用的"最佳实践",是能直接对应到具体操作的判定线。
开头的第一个决定,其实是在买机器的时候就做的:选什么系统。 Debian 12 和 Ubuntu 24.04 是最省心的两个选择,Debian 更稳(不预装一堆用不上的服务、升级频率低),Ubuntu 的社区资料更多、遇到问题搜得到答案。这一节后面的所有命令都按 Debian 12 写,Ubuntu 上把包名换成对应的即可。 如果你完全不想碰命令行,宝塔面板能把第七步的 LNMP 环境配置压缩成十分钟,代价是它要吃掉几百 MB 内存,而且它自己就是一个常驻的服务,需要单独算进 PHP-FPM 的进程预算里——用面板的话,内存建议从 4 GB 起步,不要用 1 GB 那档。
另外要决定的还有虚拟化方式和机房位置。 商品库里云途 HK.DS.S 标的是 6248 单核、云途 DS.ES.B 标的是 6138 双核、DS.ES.D 标的是 8163 单核,这些 CPU 型号代号对应的是不同代际的产品,同型号在不同机器上的实际性能有差别——如果你的业务对单核性能敏感(比如跑编译、加密、图像处理),选机时优先看 CPU 型号而不是核心数。
第一个数字:PHP-FPM 进程数与内存的匹配度。 用这条命令直接看当前状态:
ps aux | grep -c "[p]hp-fpm"
free -m | awk '/Mem:/{print "可用内存: "$7" MB"}'
判断标准:PHP-FPM 进程数乘以 60 MB,应该小于可用内存的三分之一。 超过三分之一就说明进程配多了,系统开始频繁回收缓存,表现为"白天正常、晚上变慢"。 处理方式是按前面的公式重算 pm.max_children,改完重启 PHP-FPM。
第二个数字:数据库连接数与进程数的关系。 这两个数必须匹配:
SHOW STATUS LIKE 'Threads_connected';
SHOW VARIABLES LIKE 'max_connections';
判断标准:Threads_connected 的峰值应该小于 max_connections 的 60%。 MySQL 默认 max_connections 是 151,PHP-FPM 25 个进程加上后台任务通常够用;但如果你把 pm.max_children 调到 100 就会撞上上限。 撞上限的典型症状是"CPU 不高但请求超时"——请求全在排队等连接。
第三个数字:慢查询数量。 打开慢查询日志:
; /etc/mysql/mariadb.conf.d/50-server.cnf
[mysqld]
slow_query_log = 1
slow_query_log_file = /var/log/mysql/slow.log
long_query_time = 1
判断标准:慢查询日志里 1 秒以上的查询条数应该是 0。 有的话按下面的方式找出来:
tail -100 /var/log/mysql/slow.log
mysqldumpslow -s t -t 10 /var/log/mysql/slow.log
第四个数字:磁盘 IO 等待。 这是判断该不该升配的关键:
iostat -x 1 5
判断标准:%util 接近 100 或者 await 超过 100 毫秒,说明磁盘是瓶颈。 这时候加内存没用、加 CPU 也没用,要换的是存储介质。 商品库里 LAX 系列的磁盘是 NVMe SSD、RosCloud 系列没标注介质、云途 HK.DS.P 和 HK.DS.S 用的是 SSD 而 HK.DS.S 的 6000 GB 档是 SAS HDD——如果你的站点有大量数据库写入,介质类型的差别会直接体现在 await 上。
这四个数字的排查顺序也重要:先看 PHP-FPM 进程数(最便宜),再看数据库连接数,然后查慢查询,最后才动磁盘。 前两项是配置问题,改配置就行;后两项是硬件问题,只能换机器。
最后提一个常被忽略的点:缓存。 WordPress 站点装一个对象缓存插件,能把数据库查询量降一个数量级:
apt install -y php-memcached redis-server
systemctl enable --now redis-server
wp plugin install redis-cache
wp redis-cache enable
wp cache flush
装完缓存后回到第一个数字再看一次 PHP-FPM 进程数——缓存会显著降低单请求的内存占用,进程数可以相应调小,内存就空出来了。
九、常见报错:建站过程中最常卡住的十个问题

把这十个记下来,能省掉大半的排查时间。
报错一:网站 502 Bad Gateway。 这是 Nginx 正常但 PHP-FPM 挂了或连不上。先查 PHP-FPM 状态:systemctl status php8.2-fpm。再查 socket 路径对不对:grep -r "fastcgi_pass" /etc/nginx/。最常见的原因是 PHP 版本升级后 socket 路径变了(php8.2-fpm.sock 变成 php8.3-fpm.sock)。
报错二:网站 403 Forbidden。 Nginx 找到了文件但不让读。查权限:ls -ld /var/www/你的域名/public,需要目录 755、文件 644、属主 www-data。
报错三:502 间歇性出现,刷新就好。 PHP-FPM 进程数不够或者内存不够被打爆。看日志:tail -50 /var/log/php8.2-fpm.log,找 "Allowed memory size exhausted" 或 "pm.max_children" 相关记录。
报错四:mysqldump: Got error: 1044: Access denied。 导出账号权限不够,或者没给 LOCK TABLES 权限。用 root 导出,或者去掉 --lock-tables。
报错五:ERROR 1064: You have an error in your SQL syntax。 导入时字符集不匹配。导出和导入两端都加 --default-character-set=utf8mb4。
报错六:WordPress 提示"数据库连接错误"。 四个地方逐个查:数据库服务是否在跑(systemctl status mariadb)、wp-config.php 里的库名用户密码对不对、MySQL 是否只监听 127.0.0.1 而 PHP 连的是别的地址、数据库用户是不是只有 localhost 权限而你的 PHP 用的 TCP。
报错七:certbot 报 "Timeout during connect"。 80 端口没通。检查防火墙:ufw status | grep 80。还要确认 DNS 已经解析到这台机器——dig +short 你的域名 的结果必须是这台机器的 IP。
报错八:证书装上了但浏览器仍提示不安全。 证书是签给别的域名的,或者中间证书没配全。用 openssl s_client -connect 你的域名:443 -servername 你的域名 看返回的证书是不是你的域名。
报错九:nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)。 80 端口被占了。ss -tlnp | grep ':80' 查是谁。
报错十:网站能访问但上传图片报 500。 PHP 上传大小限制。改 /etc/php/8.2/fpm/php.ini:
upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 256M
改完 systemctl restart php8.2-fpm。 只改 Nginx 的 client_max_body_size 是不够的,两边都要改。
按你的情况,下一步该看哪家
上面讲的是判断标准,但多数人最后还是想问一句「那我该买谁」。按你的实际情况对照下面几条,直接去看对应的机型页比继续比价更快:
- 只想搭个站、预算优先:先看价格最低那档够不够用,别为用不上的配置付钱。看 zenlayer 当前机型与价格
- 做跨境或店群、需要多 IP:优先看 IP 类型与换 IP 政策,别只看配置。看 joysol 当前机型与价格
- 主要访客在国内、在意打开速度:先确认回程线路,再谈配置。看 zorocloud 当前机型与价格
- 只是开发测试、临时用:按小时或月付,用完就删,别买年付。看 zgovps 当前机型与价格
价格与库存以商家页面当日显示为准,下单前建议先确认退款窗口与是否支持按月付费。
十、什么情况下不该用新加坡节点(以及替代方案)

新加坡不是万能节点,选错位置的代价比选错配置大得多。 下面四种情况,按公开事实判断,不要靠感觉。
第一种情况:你的用户全部在中国大陆,且是内容型站点。 新加坡到中国大陆的普通国际线路,晚高峰(国内 20:00 到 23:00)丢包率会明显上升。如果你的站是纯内容、没有 CDN 兜底,这段时间的打开速度会直接反映在跳出率上。替代方案:换成面向大陆优化的线路类型,比如商品库里 backwaves 提供的"美国/日本 VPS 接入 CU 9929 / AS10099 (CUG) 顶级联通精品网",zorocloud 提供"CN2 GIA、9929、CMIN2"等线路,这些是线路产品,不是机房位置产品——先确认你要的是线路而不是城市。
第二种情况:你做的是需要长期大流量的下载或视频分发。 商品库里云途 HK.DS.S 虽然配了 40000 GB 月流量,但它是 SAS HDD 介质、每 TB 流量 20.48 元;而 LAX 系列 LAX-LARGE 是 NVMe SSD、10000 Mbps 带宽、40000 GB 月流量、每 TB 流量 3.41 美元。同样吃流量的业务,机房的介质和带宽结构比城市更重要。 替代方案:把下载和分发拆到独立的存储/带宽型节点上,Web 层留在新加坡。
第三种情况:你的站只面向欧美用户,新加坡只是"因为听说离中国近"。 新加坡到北美的延迟通常在 200 毫秒以上,而美西节点到北美用户在 50 毫秒以内。你的用户在哪,节点就该在哪,与你自己在哪无关。 替代方案:选 LAX 系列这样的美西节点,LAX-STARTER 折月 16.67 美元、LAX-MEDIUM 折月 66.67 美元,都比"新加坡 + 高配"便宜。
第四种情况:你的站点是纯内部系统或开发测试环境,访客全在公司内网。 为此付新加坡节点的溢价毫无意义。替代方案:选最便宜的配置就够,RosCloud-01 是 19.99 美元/月、1 GB 内存 20 GB 硬盘、500 Mbps 带宽、1024 GB 流量。
这四种情况的判断依据全部是公开事实:机房位置、线路类型、计费方式、介质类型、IP 资源。 不涉及对任何商家的评价,因为配置表和线路类型是公开信息,你自己就能验证。
十一、给四类人的具体配置方案

读完前面的步骤,最后一步是"那我该买哪台"。 按你的实际情况对照下面四条。
第一类:个人站长、做技术博客或练手,月 PV 一万以内。 建议方案:RosCloud-01,19.99 美元/月,2 核 1 GB 内存 20 GB 硬盘 500 Mbps 带宽 1024 GB 流量。 这个配置跑纯静态站或 Typecho 这类轻量博客绰绰有余,月流量按前面算的,30000 PV 才用掉 24 GB,你 1024 GB 的配额够用四十多倍。但如果你要装 WordPress 并开十个以上插件,请直接跳到第二类。 选这台机器时一定先按月买,跑满一个月确认线路能接受再考虑转年付。
第二类:做 WordPress 企业站或小型电商,插件多、有会员登录和下单流程。 建议方案:RosCloud-03,39.99 美元/月,4 核 4 GB 内存 80 GB 硬盘 500 Mbps 带宽 3072 GB 流量,每 GB 内存 10 美元。 为什么不是 8 GB 的 RosCloud-04(49.99 美元)? 因为按 pm.max_children = (4096 1024) ÷ 60 ≈ 51 这个公式,4 GB 机器配 25 个 PHP 进程就够 WordPress 用,多出来的 4 GB 内存你大概率用不满。但如果你要跑 WooCommerce 并发下单、还要装 Redis 对象缓存,直接上 RosCloud-05(59.99 美元/月、16 GB 内存 240 GB 硬盘),每 GB 内存 3.75 美元,这个档位的单位成本最低。
第三类:做外贸独立站、跨境电商,访客在欧美和东南亚,主要诉求是稳定和干净 IP。 建议方案:LAX-MEDIUM,年付 800 美元、折月 66.67 美元,8 GB 内存 160 GB NVMe 10000 Mbps 带宽 20000 GB 流量,每 GB 内存 8.33 美元、每 TB 流量 3.41 美元。 为什么给你美西而不是新加坡? 因为你的访客在欧美,LAX 系列从洛杉矶出发的延迟对欧美用户更友好,而且这条线年付有明确的价格优势。如果你同时需要住宅 IP 或双 ISP 属性,商品库里的干杯cloud 提供"美西 AT&T 原生住宅宽带独立 IP",goodlyclouds 提供"美国双 ISP 与英国原生 IP"——这类属性是另一个维度的需求,不该用"换机房"来解决。
第四类:做站群、多站合用,或者跑需要大内存的数据库业务(论坛、ERP 后端)。 建议方案:云途 HK.DS.P,750 元/月,64 GB 内存 1024 GB SSD 硬盘 2000 Mbps 带宽 40000 GB 流量,每 GB 内存 11.72 元。 这个配置为什么值得:SSD 介质、内存够跑多个站、流量配额充足。 如果你的硬盘需求更大但对 IO 不敏感,云途 HK.DS.S 是 800 元/月、128 GB 内存 6000 GB SAS HDD,每 GB 内存 6.25 元、每 GB 硬盘 0.13 元,内存单价在这条线上是最低的,代价是介质是 SAS HDD。选 HK.DS.P 还是 HK.DS.S,取决于你的负载是 IO 密集还是内存密集。
最后三条通用原则。 第一,第一台机器一定按月买,测完延迟、丢包、备份恢复、证书续期这四项再决定要不要转年付。第二,备案问题要先确认:面向中国大陆访客的站点在境内服务器上需要备案,放在新加坡/香港/美国节点不需要备案,这也是选海外节点最常见的实际理由——但前提是你的业务不要求境内备案。第三,建好站之后立刻做一次恢复演练,把备份文件解到临时目录打开看看,备份存在不等于能恢复。
一件必须说清的事:以上全部价格与配置来自渠道库快照,采样时间 2026-11-14 12:47,库存与报价随时会变,以商家页面当日显示为准。 不同节点的线路质量、IP 属性、支付方式以商家页面说明为准。
