Deploying 1C-Bitrix on Selectel: A Complete Guide

You chose Selectel for 1C-Bitrix, followed the documentation, but a week later MySQL begins to crash under load and the site slows down. A misconfiguration can cost up to 30% of your infrastructure budget. We deploy Bitrix on Selectel turnkey, accounting for every nuance: from server selection to ba

Our competencies:

Frequently Asked Questions

You chose Selectel for 1C-Bitrix, followed the documentation, but a week later MySQL begins to crash under load and the site slows down. A misconfiguration can cost up to 30% of your infrastructure budget. We deploy Bitrix on Selectel turnkey, accounting for every nuance: from server selection to backups. Selectel is a good choice thanks to its own data centers and flexible pricing, but without proper configuration, high performance is unattainable. With 5 years in the market, we've completed 50+ projects—from small shops to high-load portals.

How to Choose a Server for Bitrix on Selectel

Option When Suitable Recommended Configuration
Virtual Server (VPS) Small to medium traffic, budget projects 2 vCPU, 4 GB RAM, SSD
Cloud Server Flexibility needed, hourly billing 4 vCPU, 8 GB RAM, scalable
Dedicated Server High traffic, performance demands 8+ vCPU, 32+ GB RAM, NVMe
Object Storage S3 Files, media content, backups By storage volume

For most projects, the optimal architecture is split: a cloud server for the web, a separate database (MySQL on another VM) and S3 for files. If you're unsure about the choice, contact us—we'll select the optimal configuration for your budget.

Why Separate Database and Web Server?

Separating the web server and database increases fault tolerance: if MySQL goes down, the site doesn't completely break—it only temporarily loses dynamic functionality. Additionally, you can scale each component independently: add memory to the database without restarting the web server. Redis for caching is 3x faster than file caching, reducing response time from 50 ms to 10 ms. On a recent e-commerce project with 15,000 daily products, our approach reduced page load times from 4.5 seconds to 1.2 seconds.

Deploying Infrastructure: Step-by-Step Plan

  1. Create a cloud server in the Selectel panel or via CLI. Use Ubuntu LTS (22.04 or newer). Configuration: from 2 vCPU / 4 GB RAM, SSD local-fast (NVMe) disk. Add a public IP and a private network for database communication.
  2. Set up the web environment: nginx + PHP-FPM 8.1.
  3. Deploy MySQL on a separate server, configure parameters for Bitrix.
  4. Connect Redis for cache and sessions.
  5. Install an SSL certificate via Certbot.
  6. Configure object storage and mount the upload/ directory.
  7. Configure the firewall and security groups.
  8. Schedule backups and monitoring.

Following this order guarantees a stable infrastructure without surprises.

Software Stack: nginx + PHP-FPM

apt update && apt upgrade -y apt install -y nginx add-apt-repository ppa:ondrej/php -y apt install -y php8.1-fpm php8.1-mysql php8.1-curl php8.1-gd \ php8.1-mbstring php8.1-xml php8.1-zip php8.1-bcmath \ php8.1-intl php8.1-soap php8.1-redis php8.1-opcache php8.1-imagick 

For the nginx configuration, we use the official bitrix-nginx.conf from 1C or build one manually. Here's a working config with access to service directories denied:

server { listen 443 ssl http2; server_name example.ru; root /var/www/bitrix/public_html; ssl_certificate /etc/letsencrypt/live/example.ru/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.ru/privkey.pem; ssl_protocols TLSv1.2 TLSv1.3; client_max_body_size 100m; client_body_timeout 120s; location ~* \.(css|js|png|jpg|gif|ico|svg|woff2)$ { expires 30d; add_header Cache-Control "public, immutable"; } location ~ /bitrix/modules/ { deny all; } location ~ /bitrix/php_interface/ { deny all; } location ~ /bitrix/tools/ { deny all; } location ~ \.php$ { fastcgi_pass unix:/run/php/php8.1-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_read_timeout 120; include fastcgi_params; } } 

Recommendations from 1C-Bitrix for nginx configuration

How to Configure MySQL for High Loads?

Since Selectel does not offer a managed MySQL service, we install MySQL 8.0 on a separate cloud server. After installation, we create the database and user with the required privileges:

mysql -e "CREATE DATABASE bitrix CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;" mysql -e "CREATE USER 'bitrix'@'10.0.1.%' IDENTIFIED BY 'PASSWORD';" mysql -e "GRANT ALL ON bitrix.* TO 'bitrix'@'10.0.1.%';" 

Key my.cnf parameters for Bitrix performance:

[mysqld] innodb_buffer_pool_size = 2G innodb_log_file_size = 512M innodb_flush_log_at_trx_commit = 2 query_cache_type = 0 max_connections = 300 slow_query_log = 1 long_query_time = 2 character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci 

Proper buffer tuning and disabling the query cache reduce database load by up to 40%.

Caching, SSL, and Object Storage

For cache and sessions, install Redis: apt install redis-server. Bind to the internal IP, set a password, limit memory (e.g., maxmemory 1gb), and choose the allkeys-lru policy. Obtain an SSL certificate via Certbot: certbot --nginx -d example.ru -d www.example.ru and add auto-renewal to cron.

Selectel Object Storage (S3) is mounted via s3fs. Endpoint: s3.storage.selcloud.ru. After mounting the upload/ folder, Bitrix automatically saves files to the cloud.

Firewall and Security

Configure security groups in the Selectel panel. Minimum rules:

Inbound: 80/tcp — 0.0.0.0/0 (HTTP, redirect to HTTPS) 443/tcp — 0.0.0.0/0 (HTTPS) 22/tcp — Your office IP Between servers (private network): 3306/tcp — only from the web server 6379/tcp — only from the web server 

Monitoring and Backups

Daily MySQL dump to Object Storage is a best practice. This automation script saves time and money:

#!/bin/bash BACKUP_DIR="/tmp/db_backup" DATE=$(date +%Y%m%d_%H%M) mkdir -p $BACKUP_DIR mysqldump -h 10.0.1.10 -u bitrix -pPASSWORD bitrix | gzip > "$BACKUP_DIR/db_$DATE.sql.gz" s3cmd put "$BACKUP_DIR/db_$DATE.sql.gz" s3://bitrix-backups/db/ find $BACKUP_DIR -mtime +1 -delete 

In addition to dumps, we recommend Selectel disk snapshots—they allow quick VM recovery in case of failure.

What's Included in Our Deployment

  • Server setup (Ubuntu, nginx, PHP 8.1)
  • Installation and optimization of MySQL tailored to Bitrix specifics
  • Connection of Redis, object storage, and SSL
  • Configuration of backups and monitoring (dashboards available)
  • Firewall and security group setup
  • Documentation for access and recovery procedures

After deployment, you get a production-ready infrastructure. Order a deployment—we'll assess your project and propose the optimal configuration. Contact us for a consultation.