您的位置:首页 >宝塔跨服务器快速传输网站源码方法
发布于2026-04-09 阅读(0)
扫一扫,手机访问
用 rsync + SSH 密钥免密登录可实现秒级增量同步,关键在于预置公钥、使用绝对路径、添加 --delete -avz 参数及排除动态文件;需停用宝塔站点并确保跨云网络与防火墙配置正确。

宝塔面板本身不提供跨服务器源码传输功能,直接在面板里点“上传”或“下载”只作用于本机。真要快,得绕过面板,用底层 rsync 配合预置的 SSH 密钥——实测 100MB 源码(含千级小文件)3 秒内完成增量同步。
关键不是“怎么传”,而是“怎么让每次传输都跳过认证和全量重传”:
~/.ssh/authorized_keys 中已写入源服务器的公钥)/www/wwwroot/xxx 因用户权限导致 rsync 权限拒绝--delete 和 -avz:前者保证目标与源严格一致,后者开启归档、压缩、保留权限时间戳示例命令(在源服务器执行):
rsync -avz --delete -e "ssh -p 2222" /www/wwwroot/my-site/ user@192.168.3.5:/www/wwwroot/my-site/注意末尾斜杠——
/my-site/ 表示同步目录内容,/my-site(无斜杠)会把整个目录复制进去。
宝塔的站点监控、防篡改、计划任务等模块可能对网站目录加文件锁或频繁读写,rsync 同步时容易报错 Permission denied 或卡在某个 .log 文件上。
不是关掉宝塔服务,而是精准规避:
--exclude 跳过 runtime/、cache/、logs/、.user.ini 等非源码文件.bt_backup 目录——这是宝塔备份专用,跨服务器同步会污染目标备份列表增强版命令:
rsync -avz --delete --exclude="runtime/" --exclude="cache/" --exclude="logs/" --exclude=".user.ini" -e "ssh -p 2222" /www/wwwroot/my-site/ user@192.168.3.5:/www/wwwroot/my-site/
阿里云/腾讯云/华为云默认安全组禁止非 22 端口入站,且部分厂商默认关闭 root 登录。同步失败时,先别调 rsync 参数,先确认基础链路通不通:
ssh -p 2222 user@192.168.3.5 手动连——如果输密码才进得去,说明密钥没配对;如果直接 Connection refused,看目标服务器 sshd_config 的 Port 和 PermitRootLoginping 192.168.3.5 不通?不是网络问题,是私网 IP 跨云不可达——必须用公网 IP 或打通 VPC 对等连接ufw 或 firewalld)是否放行了对应端口?sudo ufw status 看一眼比猜强scp 每次都是全量拷贝,没有增量逻辑;tar | ssh 虽快但无法校验一致性、不能跳过未修改文件、出错就中断重来。而 rsync 的核心优势在于“只传差量”:
rsync 也只传那个文件,其他全部跳过rsync 自带校验,传输中 Ctrl+C 再执行一次,它自动从断点继续真正容易被忽略的是:宝塔面板里“文件”功能看到的修改时间,可能和 rsync 实际对比的 mtime 不一致——因为某些宝塔插件会偷偷 touch 文件。所以首次部署后,建议在目标服务器手动跑一遍 rsync --dry-run 看输出,确认“sending incremental file list”下只有预期变更项,再正式执行。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
9