Transferring a 1C-Bitrix website to a new hosting provider

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Our competencies:
Development stages
Latest works
  • image_website-b2b-advance_0.png
    B2B ADVANCE company website development
    1173
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Website development for FIXPER company
    811
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    745
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    976

Migrating a 1C-Bitrix Site to a New Hosting Provider

The most common mistake during a transfer is copying files, uploading a database dump, and considering the job done. In practice the site fails to start or runs with errors: PHP version mismatch, a different document root path, cache containing old settings, permission issues on directories. Migrating 1C-Bitrix requires a clear checklist.

Pre-Migration Preparation

Before starting, determine the new hosting configuration and compare it with the current one:

  • PHP version (Bitrix supports 7.4–8.2; some providers default to an outdated version)
  • PHP extensions: mbstring, gd, zip, curl, opcache, PDO, pdo_mysql — all mandatory
  • Database type and version: MySQL 5.7+ or MariaDB 10.3+; some providers impose hard limits on max_allowed_packet, innodb_buffer_pool_size
  • Availability of cron and the ability to add jobs
  • Restrictions on exec(), shell_exec() — needed for agents and certain modules

Creating a Backup

The standard tool is the backup module in the admin panel (Settings → Tools → Backup). It creates an archive in /bitrix/backup/. However, it has a limitation: on large sites (5–10 GB or more), the process times out.

For large sites, the manual approach is more reliable:

# Database dump
mysqldump -u dbuser -p --single-transaction --routines --triggers dbname > dump.sql

# File archive (excluding cache and backups)
tar -czf site_files.tar.gz \
  --exclude='./bitrix/cache' \
  --exclude='./bitrix/managed_cache' \
  --exclude='./bitrix/backup' \
  --exclude='./bitrix/html_pages' \
  /var/www/site/

Excluding the cache is mandatory: it takes up significant space and is invalidated on the new server anyway.

Configuring the New Server

After unpacking the files, update the database connection configuration in /bitrix/php_interface/dbconn.php:

$DBType = "mysql";
$DBHost = "localhost";
$DBLogin = "new_db_user";
$DBPassword = "new_password";
$DBName = "new_db_name";

Also update /bitrix/.settings.php — it stores equivalent settings for the core module and cache:

'connections' => [
    'value' => [
        'default' => [
            'className' => '\\Bitrix\\Main\\DB\\MysqlConnection',
            'host' => 'localhost',
            'database' => 'new_db_name',
            'login' => 'new_db_user',
            'password' => 'new_password',
        ],
    ],
],

Directory and File Permissions

This is critical. 1C-Bitrix requires specific permissions:

Directory Permissions
/upload/ 755 (recursive)
/bitrix/cache/ 755
/bitrix/managed_cache/ 755
/bitrix/.settings.php 640
/bitrix/php_interface/dbconn.php 640

Hosting providers often run via suexec, and permissions must belong to the site user. If php-fpm runs under a different user, cache write errors are inevitable.

Post-Migration Checklist

After launch, work through the checklist:

  • Core functionality check: open /bitrix/admin/ — it should load without errors
  • Email test: contact form, order notifications — PHP mail() or SMTP settings in the Main module
  • Agents and cron: in /bitrix/admin/agent_list.php verify that agents execute; configure cron for /bitrix/modules/main/tools/cron_events.php
  • HTTPS and certificate: update SITE_SERVER_NAME and BX_UTF in site settings, check .htaccess for redirect rules
  • Cache: clear managed cache via admin panel (Settings → Performance → Clear Cache)
  • License: if the server IP changed — verify license activation in the 1C-Bitrix personal account

Special Case: Domain Change

If the domain is also changing alongside the transfer, additionally:

  • Update SITE_SERVER_NAME in the b_lang table (or via Settings → Sites)
  • Update the site address in Main module settings
  • Fix absolute paths in iblock content (via SQL update or the search-and-replace component)
  • Reconfigure integrations that use webhook URLs (payment systems, CRM integrations)

Typical Timelines

Site Size Timeline
Business card / landing page (up to 1 GB) 2–4 hours
Corporate site (1–10 GB) 1 business day
Online store with large catalog (10–50 GB) 1–3 days
High-load project with cluster configuration 1 week or more

Migration is performed at night or with minimal downtime via temporary DNS switching and database delta synchronization.