1. 选择日本服务器提供商与购买步骤
- 推荐提供商:AWS(东京)、Vultr(Tokyo)、Linode(Tokyo)、さくらのVPS、ConoHa WING。
- 步骤:注册账号 -> 验证身份 -> 进入控制台 -> 新建实例(选择Region:Tokyo或Osaka)-> 选择镜像(建议Ubuntu 22.04 LTS)-> 选择配置(1CPU/1GB 足够入门)-> 记录公网IP和root初始密码或SSH密钥选项 -> 启动实例并等待就绪。
2. 本地生成并上传SSH密钥(推荐,无密码登录)
- 在本地电脑生成密钥:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
按提示保存(默认 ~/.ssh/id_rsa)。
- 获取公钥并复制:
cat ~/.ssh/id_rsa.pub
- 在VPS控制台添加公钥或用初始密码登录后将公钥追加到服务器的 ~/.ssh/authorized_keys。
- 测试登录:
ssh -i ~/.ssh/id_rsa ubuntu@服务器IP
3. 第一次登陆后必须执行的初始化命令
- 更新系统并安装常用工具:
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git ufw build-essential
- 创建普通用户并授予sudo(可选但推荐):
sudo adduser deploy
sudo usermod -aG sudo deploy
- 设置时区(日本):
sudo timedatectl set-timezone Asia/Tokyo
4. 配置防火墙与SSH安全
- 使用UFW允许基础端口并启用:
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full' # 如果后面用Nginx
sudo ufw enable
sudo ufw status
- 可更改SSH端口(可选):编辑 /etc/ssh/sshd_config,修改 Port 22 -> 2222 并重启ssh:
sudo systemctl restart sshd
- 安装fail2ban防止暴力破解(推荐):
sudo apt install -y fail2ban
5. 安装Nginx并配置反向代理
- 安装Nginx:
sudo apt install -y nginx
- 创建站点配置(示例将端口80代理到本地3000):
sudo tee /etc/nginx/sites-available/myapp <<'EOF'
server {
listen 80;
server_name your.domain.jp;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
EOF
sudo ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx
- 确认公网可以访问80端口。
6. 部署第一个示例项目(Node.js + PM2)
- 安装Node.js(使用官方安装脚本):
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install -y nodejs
- 切换到deploy用户并克隆项目:
sudo -i -u deploy
git clone https://github.com/someuser/simple-node-app.git
cd simple-node-app
npm install
- 使用PM2管理进程:
sudo npm install -g pm2
pm2 start index.js --name myapp
pm2 save
pm2 startup systemd
# 按提示运行生成的命令以写入systemd
- 确保应用监听在127.0.0.1:3000或对应端口,与Nginx配置一致。
7. 配置域名解析指向日本服务器IP
- 在域名服务商控制面板添加A记录:name=@ 或 www,值=你的VPS公网IP,TTL=自动。
- 等待解析生效(通常几分钟到1小时),可用本地终端检测:
nslookup your.domain.jp
curl -I http://your.domain.jp
8. 使用Let's Encrypt获取HTTPS证书(Certbot)
- 安装Certbot并为Nginx自动申请证书:
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d your.domain.jp -d www.your.domain.jp
- 按提示输入邮箱并同意协议,Certbot会自动修改Nginx配置并申请证书。
- 测试自动续期:
sudo certbot renew --dry-run
9. 常见问题排查与运维建议
- 无法SSH:检查安全组/防火墙、VPS控制台是否限制,确认IP正确。
- 网站404或502:查看Nginx错误日志 /var/log/nginx/error.log 与应用日志 pm2 logs myapp。
- 备份与监控:设置定时备份(rsync或快照),考虑安装Prometheus/Grafana或使用云监控服务。
10. 问答1:我没有域名可以直接用IP部署吗?
问:没有域名能否直接用IP访问并完成部署?
答:可以,直接用服务器公网IP访问Nginx即可,但无法使用Let's Encrypt自动签发域名证书(HTTPS),只适合测试。上线推荐绑定域名并申请证书以保证安全与SEO。
11. 问答2:服务器在日本会影响国内访问速度吗?
问:部署在
日本服务器,国内用户访问速度如何?
答:日本与中国大陆地理位置较近,访问延迟通常较低(可通过CDN进一步优化)。若目标用户主要在中国大陆,建议配合国内CDN或在国内备案的服务商(注意法律合规)。
12. 问答3:零基础出错如何快速定位问题?
问:部署出错时如何快速定位问题?
答:按层次排查:DNS->Nginx->应用->系统资源。使用命令检查(nslookup/curl/nginx -t/systemctl status pm2/journalctl)并查看日志,常见错误信息一般能指示下一步解决方向。
来源:零基础教程教你怎么使用日本服务器完成首个部署项目