如何将1C-Bitrix网站转移到另一个托管提供商:完整分步指南
将1C-Bitrix网站迁移到新的托管提供商可能看起来令人生畏,但通过正确的准备和清晰的流程,您可以以最少的停机时间和零数据丢失完成传输。本综合指南将引导您完成每个阶段——从备份文件和数据库到更新DNS记录和测试实时网站。
无论您是迁移到更快的服务器、寻求更好的支持,还是简单地超出当前计划的范围,来自AlexHost的VPS Hosting提供NVMe SSD存储、完全根访问权限和内置DDoS保护——1C-Bitrix发挥最佳性能所需的一切。
为什么迁移您的1C-Bitrix网站?
在深入技术步骤之前,值得了解网站所有者选择迁移的最常见原因:
- 性能瓶颈——共享托管环境可能会限制CPU和RAM,导致资源密集型1C-Bitrix安装的页面加载缓慢。
- 可扩展性限制——随着业务增长,您需要能够随之扩展的基础设施。
- 不可靠的正常运行时间——频繁的停机会损害SEO排名和用户信任。
- 缺乏技术支持——1C-Bitrix等复杂CMS平台需要知识渊博的托管支持。
- 成本优化——以有竞争力的价格获得更好的性能。
AlexHost的基础设施专门针对要求苛刻的CMS平台进行了优化,是您1C-Bitrix迁移的绝佳目的地。
前置条件:开始前需要什么
在启动迁移之前,请收集以下内容:
- FTP客户端——推荐使用FileZilla(免费且跨平台)。
- phpMyAdmin访问权限——在您当前和新的托管控制面板上都可用。
- FTP凭证——用于源服务器和目标服务器。
- 域名注册商访问权限——在迁移后更新DNS记录。
- 足够的本地磁盘空间——临时存储网站文件和数据库导出。
- 维护窗口——在低流量时段安排迁移,以最小化用户影响。
> 专业提示:始终验证您的新托管环境是否满足1C-Bitrix的技术要求:PHP 7.4或更高版本、MySQL 5.7+(或MariaDB 10.3+)和足够的内存限制(最少256MB memory_limit in php.ini)。
步骤1:备份您的整个网站
在任何迁移之前创建完整备份是不可协商的。这个安全网允许您在传输过程中出现问题时将网站恢复到原始状态。
备份内容
| 组件 | 位置 | 方法 |
|---|---|---|
| 网站文件 | public_html 或 www 目录 | FTP下载或托管文件管理器 |
| MySQL数据库 | phpMyAdmin或托管面板 | SQL导出 |
| 配置文件 | /bitrix/php_interface/dbconn.php | 包含在文件备份中 |
| 电子邮件数据(如适用) | 托管控制面板 | 手动导出 |
如果您还管理与域名相关的业务电子邮件,请考虑查看电子邮件托管选项,以确保您的邮箱与网站一起正确迁移或保留。
步骤2:从当前托管导出数据库
1C-Bitrix数据库包含您的所有网站内容、用户帐户、产品数据、设置等。正确导出它至关重要。
步骤2.1——登录phpMyAdmin
通过当前托管提供商的控制面板(cPanel、Plesk或ISPmanager)访问phpMyAdmin。导航到数据库→phpMyAdmin。
步骤2.2——选择正确的数据库
在phpMyAdmin的左侧面板中,单击与您的1C-Bitrix安装相关的数据库。如果您不确定使用的是哪个数据库,请检查/bitrix/php_interface/dbconn.php文件——$DBName变量会告诉您。
步骤2.3——导出数据库
- 单击顶部导航栏中的导出选项卡。
- 选择自定义导出方法以获得更多控制(推荐用于大型数据库)。
- 选择SQL作为输出格式。
- 在输出下,选择将输出保存到文件并选择gzip压缩以减小文件大小。
- 单击执行将
.sql.gz文件下载到您的本地计算机。
> 对于大型数据库:如果您的数据库超过100MB,请考虑通过SSH使用命令行进行更可靠的导出:
> “`bash
> mysqldump -u your_db_user -p your_database_name > bitrix_backup.sql
> “`
步骤3:通过FTP下载网站文件
导出数据库后,下一步是从当前服务器下载所有网站文件。
步骤3.1——通过FTP连接到当前服务器
打开FileZilla并输入您当前的托管FTP凭证:
- 主机:您的服务器IP地址或FTP主机名
- 用户名:您的FTP用户名
- 密码:您的FTP密码
- 端口:21(标准FTP)或22(SFTP——建议用于安全性)
步骤3.2——下载所有网站文件
导航到您的1C-Bitrix安装的根目录——通常是public_html/或www/。选择所有文件和文件夹,右键单击,然后选择下载。
确保包含的关键目录:
/bitrix/ ← Core CMS files and modules
/upload/ ← User-uploaded content and media
/local/ ← Custom templates and components
/bitrix/php_interface/ ← Configuration files including dbconn.php
/.htaccess ← Server configuration rules
/index.php ← Entry point> 注意:/upload/目录可能非常大。如果带宽或时间是一个问题,请考虑首先使用SSH将其压缩为服务器上的.tar.gz存档,然后下载单个存档文件。
步骤4:设置新的托管环境
上传文件之前,请正确准备新的托管环境。
验证服务器要求
登录新的托管控制面板并确认为1C-Bitrix配置了以下PHP设置:
memory_limit = 256M
max_execution_time = 300
upload_max_filesize = 64M
post_max_size = 64M如果您使用的是带cPanel的VPS,您可以直接通过PHP选择器调整这些设置,或通过SSH编辑php.ini——让您完全控制服务器环境,没有限制。
创建目标目录
确保目标目录(例如public_html/)干净且准备好接收您的文件。
步骤5:将网站文件上传到新的托管服务器
使用新托管提供商提供的新FTP/SFTP凭证连接到新的托管服务器。
上传过程
- 在FileZilla中,将本地站点面板设置为您下载1C-Bitrix文件的文件夹。
- 将远程站点面板设置为新服务器上的目标目录(例如
public_html/)。 - 选择所有文件和文件夹,右键单击,然后选择上传。
> 重要:确保隐藏文件(以点开头的文件,例如.htaccess)可见并包含在传输中。在FileZilla中,转到服务器→强制显示隐藏文件使其可见。
设置正确的文件权限
上传后,设置以下权限以确保1C-Bitrix正常运行:
| 文件/目录 | 权限 |
|---|---|
| 目录 | 755 |
| PHP文件 | 644 |
/upload/ 目录 | 777 |
/bitrix/cache/ | 777 |
步骤6:在新托管服务器上创建新数据库
步骤6.1——在新主机上访问phpMyAdmin
登录新的托管控制面板并打开phpMyAdmin。
步骤6.2——创建新数据库和用户
- 单击数据库选项卡。
- 输入新数据库的名称(例如
bitrix_db)并单击创建。 - 导航到用户帐户→添加用户帐户。
- 创建一个具有强密码的新数据库用户。
- 在用户数据库下,选择授予数据库的所有权限并选择新创建的数据库。
- 单击执行保存。
> 安全最佳实践:切勿为网站的数据库连接使用root MySQL用户。始终创建仅具有必要权限的专用用户。
步骤7:将数据库导入到新服务器
步骤7.1——选择新数据库
在新服务器的phpMyAdmin中,单击左侧面板中新创建的数据库。
步骤7.2——导入SQL文件
- 单击导入选项卡。
- 单击选择文件并选择您在步骤2中导出的
.sql或.sql.gz文件。 - 确保格式设置为SQL。
- 单击执行开始导入。
对于大型数据库,phpMyAdmin导入可能会超时。在这种情况下,使用SSH:
mysql -u new_db_user -p new_database_name < bitrix_backup.sql步骤8:更新1C-Bitrix数据库配置文件
这是最关键的步骤之一。您必须更新1C-Bitrix中的数据库连接设置,以指向新服务器上的新数据库。
定位并编辑dbconn.php
主要配置文件位于:
/bitrix/php_interface/dbconn.php使用文本编辑器(通过FTP或SSH)打开此文件并更新以下变量:
<?php
define("MYSQL_TABLE_TYPE", "InnoDB");
$DBType = "mysql";
$DBHost = "localhost"; // Database host — usually "localhost"
$DBName = "new_database_name"; // Your new database name
$DBLogin = "new_database_user"; // Your new database username
$DBPassword = "new_database_password"; // Your new database password
$DBDebug = false;
$DBDebugToFile = false;进行更改后保存文件。
还要检查.settings.php
在较新版本的1C-Bitrix中,数据库凭证也可能存储在:
/bitrix/.settings.php查找connections部分并相应地更新它:
'connections' => array(
'value' => array(
'default' => array(
'className' => 'BitrixMainDBMysqliConnection',
'host' => 'localhost',
'database' => 'new_database_name',
'login' => 'new_database_user',
'password' => 'new_database_password',
'options' => 2,
),
),
),步骤9:更新域DNS设置
上传文件和配置数据库后,最后的技术步骤是将您的域重定向到新服务器。
步骤9.1——登录您的域名注册商
访问您的域名注册商的控制面板。如果您还没有注册域名或想要整合您的服务,通过AlexHost的域名注册让您从单个仪表板管理您的域名和托管。
步骤9.2——更新DNS记录
找到DNS管理部分并进行以下更改:
| 记录类型 | 名称 | 值 | TTL |
|---|---|---|---|
| A记录 | @(根域) | 新服务器IP地址 | 3600 |
| A记录 | www | 新服务器IP地址 | 3600 |
| MX记录 | @ | 邮件服务器(如适用) | 3600 |
步骤9.3——更新名称服务器(如需要)
如果您的新托管提供商使用自定义名称服务器,请在您的注册商处将NS记录更新为您的新主机提供的那些。AlexHost将在帐户设置时为您提供特定的名称服务器地址。
> DNS传播时间:DNS更改通常在2–24小时内传播,尽管在某些情况下可能需要长达48小时。在此窗口期间,某些访问者可能仍会被定向到旧服务器。
步骤10:彻底测试您的网站
DNS传播完成后,在停用旧托管帐户之前对迁移的网站进行彻底审查。
测试清单
- [ ] 主页正确加载——没有空白页面或PHP错误
- [ ] 所有内部页面都可访问——检查产品页面、博客文章和类别页面
- [ ] 图像和媒体正确加载——验证
/upload/目录已完全传输 - [ ] 表单正常工作——测试联系表单、注册和登录
- [ ] 电子商务功能——如适用,测试购物车和结账流程
- [ ] 管理面板可访问——登录
/bitrix/admin/处的1C-Bitrix管理面板 - [ ] SSL证书处于活动状态——确保HTTPS正常工作;如果您需要新证书,[SSL证书可通过AlexHost获得
- [ ] 没有断开的链接——使用Screaming Frog或Google Search Console等工具识别断开的URL
- [ ] 页面加载速度——通过GTmetrix或Google PageSpeed Insights运行速度测试
如何在DNS传播前测试
您可以通过修改本地hosts文件在DNS传播前在新服务器上预览您的网站:
在Windows上:C:WindowsSystem32driversetchosts
在Linux/macOS上:/etc/hosts
添加以下行:
NEW_SERVER_IP yourdomain.com这会强制您的浏览器将域解析为新服务器IP,允许您测试网站而不影响其他用户。
步骤11:清除1C-Bitrix缓存
迁移后,清除所有缓存数据以确保网站从新服务器加载新内容。
- 登录1C-Bitrix管理面板(
/bitrix/admin/)。 - 导航到设置→性能→缓存。
- 单击清除缓存。
或者,您可以通过FTP或SSH手动删除缓存目录:
rm -rf /var/www/html/bitrix/cache/*
rm -rf /var/www/html/bitrix/managed_cache/*步骤12:停用旧托管帐户
一旦您确认:
- 您的网站在新服务器上完全正常运行
- DNS已完全传播
- 所有数据已成功传输
- 您拥有所有文件和数据库的本地备份
…您可以安全地取消旧的托管计划。至少保留本地备份30天作为额外的安全措施。
常见迁移问题及解决方法
| 问题 | 可能原因 | 解决方案 |
|---|---|---|
| 白屏/空白页面 | PHP错误或文件丢失 | 启用错误报告;检查PHP错误日志 |
| 数据库连接错误 | dbconn.php中的凭证错误 | 仔细检查$DBHost、$DBName、$DBLogin、$DBPassword |
| 图像未加载 | 文件传输不完整 | 重新上传/upload/目录 |
| 500内部服务器错误 | .htaccess不兼容 | 检查.htaccess规则;验证mod_rewrite已启用 |
| 管理面板无法访问 | 缓存或会话问题 | 清除缓存;删除/bitrix/cache/内容 |
| 迁移后页面加载缓慢 | PHP/MySQL设置未优化 | 调整###PPT_NO |
