在 Ubuntu(或其他 Linux 服务器)上“域名迁移”通常指以下几种情况之一,我先按最常见场景说明,你可以对照自己的需求:
只换 DNS 解析,服务器不变
A 记录:@ → 服务器IP
A 记录:www → 服务器IP
只需确认 Web 服务监听 0.0.0.0:80/443
例如:old.com → new.com
sudo nano /etc/nginx/sites-available/new.com
server {
listen 80;
server_name new.com www.new.com;
root /var/www/new.com;
index index.html index.php;
}
sudo ln -s /etc/nginx/sites-available/new.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
server {
server_name old.com www.old.com;
return 301 https://new.com$request_uri;
}
域名不变,换机器
原服务器备份
tar -czf site.tar.gz /var/www
mysqldump -u root -p dbname > db.sql
新 Ubuntu 安装环境
sudo apt install nginx mysql-server php-fpm
恢复数据
修改域名 DNS 指向新 IP
等待 DNS 生效(通常 10 分钟~48 小时)
把域名从 A 商转到 B 商
⚠️ Ubuntu 本身不参与此过程
sudo certbot --nginx -d new.com -d www.new.com
我可以直接给你可复制的命令方案。