Веб-доступ к базе 1С позволяет работать с учётной системой через браузер — без установки толстого клиента на каждое рабочее место. Это удобно для удалённых сотрудников, филиалов и мобильных устройств. В качестве веб-сервера часто используют Apache — бесплатный, стабильный и хорошо документированный.
Эта инструкция — для системных администраторов, которые настраивают инфраструктуру 1С на Linux-серверах. Разберём установку компонентов, настройку конфигурации Apache, публикацию базы и типичные ошибки.
Требования к серверу и программному обеспечению
Для публикации базы 1С 8.3 на веб-сервере Apache понадобятся:
- Операционная система: Linux (Ubuntu Server 20.04/22.04, CentOS 7/8, Red Hat Enterprise Linux 8/9, Debian 11/12). Windows Server тоже подходит, но Apache на Linux работает стабильнее и требует меньше ресурсов.
- Платформа 1С:Предприятие 8.3: серверная версия для Linux. Минимальная версия — 8.3.10, рекомендуется последний релиз (8.3.24 или новее) для совместимости и безопасности.
- Веб-сервер Apache: версия 2.4 и выше. Входит в стандартные репозитории большинства дистрибутивов.
- Модуль Apache для 1С: идёт в комплекте с платформой 1С (файл
wsap24.soдля Apache 2.4). - Оперативная память: минимум 4 ГБ для тестового окружения, 16 ГБ и более для продуктивной работы с 10+ пользователями.
- Процессор: 4 ядра и выше. Рекомендуются серверные процессоры Intel Xeon или AMD EPYC.
- Дисковая подсистема: SSD для базы данных и файлов 1С — обязательно. HDD замедляет работу в 5-10 раз.
Если планируете нагрузку свыше 50 одновременных пользователей, выбирайте серверы с избыточной производительностью: двухпроцессорные конфигурации, 32-64 ГБ RAM, RAID 10 на NVMe-дисках. Для филиалов и небольших компаний подойдут однопроцессорные серверные платформы с 16-32 ГБ памяти.
Установка необходимых компонентов
Установка веб-сервера Apache
Подключитесь к серверу по SSH под пользователем с правами sudo. Обновите список пакетов и установите Apache:
Для Ubuntu/Debian:
sudo apt update sudo apt install apache2 -y
Для CentOS/RHEL:
sudo yum install httpd -y
Проверьте версию Apache:
apache2 -v # для Ubuntu/Debian httpd -v # для CentOS/RHEL
Должна быть версия 2.4.x. Запустите веб-сервер и добавьте в автозагрузку:
Ubuntu/Debian:
sudo systemctl start apache2 sudo systemctl enable apache2
CentOS/RHEL:
sudo systemctl start httpd sudo systemctl enable httpd
Откройте браузер и перейдите по IP-адресу сервера. Должна появиться тестовая страница Apache.
Установка платформы 1С:Предприятие 8.3
Скачайте дистрибутив платформы 1С для Linux с сайта releases.1c.ru (требуется лицензия). Распакуйте архив и установите пакеты:
Для Ubuntu/Debian (deb-пакеты):
sudo dpkg -i 1c-enterprise83-common_*.deb sudo dpkg -i 1c-enterprise83-server_*.deb sudo dpkg -i 1c-enterprise83-ws_*.deb
Если возникнут ошибки зависимостей, выполните:
sudo apt install -f
Для CentOS/RHEL (rpm-пакеты):
sudo rpm -ivh 1c-enterprise83-common-*.rpm sudo rpm -ivh 1c-enterprise83-server-*.rpm sudo rpm -ivh 1c-enterprise83-ws-*.rpm
Пакет 1c-enterprise83-ws содержит модуль для веб-сервера (wsap24.so). После установки проверьте наличие файла:
ls -l /opt/1cv8/x86_64/8.3.*/wsap24.so
Путь может отличаться в зависимости от версии платформы. Запомните его — понадобится для настройки Apache.
Настройка веб-сервера Apache для 1С 8.3
Подключение модуля wsap24
Создайте конфигурационный файл для модуля 1С. В Ubuntu/Debian это /etc/apache2/mods-available/wsap24.load, в CentOS/RHEL — /etc/httpd/conf.modules.d/wsap24.conf.
Ubuntu/Debian:
sudo nano /etc/apache2/mods-available/wsap24.load
Добавьте строку (укажите точный путь к вашей версии 1С):
LoadModule _1cws_module /opt/1cv8/x86_64/8.3.24.1467/wsap24.so
Включите модуль:
sudo a2enmod wsap24 sudo systemctl restart apache2
CentOS/RHEL:
sudo nano /etc/httpd/conf.modules.d/wsap24.conf
Содержимое:
LoadModule _1cws_module /opt/1cv8/x86_64/8.3.24.1467/wsap24.so
Перезапустите Apache:
sudo systemctl restart httpd
Проверьте, что модуль загружен:
apache2ctl -M | grep 1cws # Ubuntu/Debian httpd -M | grep 1cws # CentOS/RHEL
В выводе должна быть строка _1cws_module (shared).
Создание виртуального хоста для публикации базы 1С
Виртуальный хост (VirtualHost) — это конфигурация, которая связывает доменное имя или IP-адрес с конкретным приложением. Для 1С создадим отдельный хост.
Ubuntu/Debian:
sudo nano /etc/apache2/sites-available/1c-web.conf
CentOS/RHEL:
sudo nano /etc/httpd/conf.d/1c-web.conf
Пример конфигурации:
<VirtualHost *:80>
ServerName your-domain.ru
DocumentRoot /var/www/html
# Публикация базы "my_base" через путь /my_base
<Location /my_base>
SetHandler 1c-application
ManagedApplicationDescriptor /var/www/1c/my_base.vrd
</Location>
ErrorLog ${APACHE_LOG_DIR}/1c-error.log
CustomLog ${APACHE_LOG_DIR}/1c-access.log combined
</VirtualHost>
Замените your-domain.ru на ваш домен или IP-адрес сервера. Параметр /my_base — это URL-путь, по которому будет доступна база (например, http://your-domain.ru/my_base).
Файл .vrd (Virtual Resource Descriptor) — это конфигурация публикации, которую мы создадим дальше.
Включение виртуального хоста (Ubuntu/Debian):
sudo a2ensite 1c-web.conf sudo systemctl reload apache2
CentOS/RHEL: файл в conf.d подключается автоматически. Перезагрузите Apache:
sudo systemctl reload httpd
Публикация базы 1С 8.3 на веб-сервере Apache
Создание файла публикации (.vrd)
Файл .vrd описывает параметры подключения к кластеру серверов 1С и конкретной информационной базе. Создайте каталог для файлов публикации:
sudo mkdir -p /var/www/1c sudo chown www-data:www-data /var/www/1c # Ubuntu/Debian sudo chown apache:apache /var/www/1c # CentOS/RHEL
Создайте файл my_base.vrd:
sudo nano /var/www/1c/my_base.vrd
Пример содержимого для файловой базы:
connect.url = File="/srv/1cv8/bases/my_base";
Пример для клиент-серверной базы:
connect.url = Srvr="localhost";Ref="my_base";
Где:
Srvr— адрес сервера 1С (localhost, если на том же хосте, или IP-адрес)Ref— имя информационной базы в кластере
Дополнительные параметры:
connect.url = Srvr="192.168.1.10:1541";Ref="accounting"; debug = off; isMainServer = yes;
debug = off— отключает режим отладки (для production обязательно)isMainServer = yes— указывает, что это основной сервер публикации
Установите права доступа:
sudo chmod 644 /var/www/1c/my_base.vrd sudo chown www-data:www-data /var/www/1c/my_base.vrd # Ubuntu/Debian sudo chown apache:apache /var/www/1c/my_base.vrd # CentOS/RHEL
Регистрация публикации в кластере 1С
Если используете клиент-серверный вариант, база уже должна быть зарегистрирована в кластере 1С. Проверьте список баз:
/opt/1cv8/x86_64/8.3.24.1467/rac cluster list
Найдите UUID кластера и выведите список баз:
/opt/1cv8/x86_64/8.3.24.1467/rac infobase summary list --cluster=<cluster-uuid>
Если базы нет, создайте её через консоль или веб-интерфейс сервера администрирования 1С.
Для файлового варианта достаточно указать путь к каталогу базы в .vrd-файле.
Проверка работы веб-публикации
Перезапустите Apache:
sudo systemctl restart apache2 # Ubuntu/Debian sudo systemctl restart httpd # CentOS/RHEL
Откройте браузер и перейдите по адресу:
http://your-domain.ru/my_base
Должна появиться страница авторизации 1С. Введите логин и пароль пользователя базы. Если всё настроено правильно, откроется веб-интерфейс конфигурации.
Если страница не загружается:
- Проверьте логи Apache:
sudo tail -f /var/log/apache2/1c-error.log(Ubuntu) илиsudo tail -f /var/log/httpd/1c-error.log(CentOS) - Убедитесь, что модуль wsap24 загружен:
apache2ctl -M | grep 1cws - Проверьте права доступа к
.vrd-файлу и каталогу базы - Убедитесь, что служба rphost (сервер 1С) запущена:
sudo systemctl status srv1cv83-8.3.24@default
Настройка HTTPS для безопасного доступа
Публикация базы 1С по HTTP передаёт данные в открытом виде — включая пароли пользователей. Для продуктивного использования настройте HTTPS с SSL-сертификатом.
Установите модуль SSL:
Ubuntu/Debian:
sudo a2enmod ssl sudo systemctl restart apache2
CentOS/RHEL:
sudo yum install mod_ssl -y sudo systemctl restart httpd
Получите SSL-сертификат через Let’s Encrypt (бесплатный):
sudo apt install certbot python3-certbot-apache -y # Ubuntu/Debian sudo yum install certbot python3-certbot-apache -y # CentOS/RHEL sudo certbot --apache -d your-domain.ru
Следуйте инструкциям certbot. После завершения откройте конфигурацию виртуального хоста и измените порт с 80 на 443:
<VirtualHost *:443>
ServerName your-domain.ru
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/your-domain.ru/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/your-domain.ru/privkey.pem
<Location /my_base>
SetHandler 1c-application
ManagedApplicationDescriptor /var/www/1c/my_base.vrd
</Location>
</VirtualHost>
Перезапустите Apache. Теперь доступ к базе идёт через https://your-domain.ru/my_base.
Оптимизация производительности веб-сервера
При большом количестве пользователей Apache может стать узким местом. Настройте параметры производительности.
Увеличение лимита одновременных подключений
Откройте конфигурацию модуля MPM (Multi-Processing Module):
Ubuntu/Debian:
sudo nano /etc/apache2/mods-available/mpm_prefork.conf
CentOS/RHEL:
sudo nano /etc/httpd/conf.modules.d/00-mpm.conf
Измените значения (для сервера с 16 ГБ RAM):
<IfModule mpm_prefork_module>
StartServers 10
MinSpareServers 10
MaxSpareServers 20
MaxRequestWorkers 150
MaxConnectionsPerChild 3000
</IfModule>
Для серверов с большей памятью увеличьте MaxRequestWorkers до 300-500. Перезапустите Apache.
Настройка кеширования
Включите модуль кеширования для статических ресурсов (CSS, JS, изображения):
sudo a2enmod expires sudo a2enmod headers sudo systemctl restart apache2
Добавьте в конфигурацию виртуального хоста:
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access plus 1 year"
ExpiresByType image/jpeg "access plus 1 year"
ExpiresByType image/png "access plus 1 year"
ExpiresByType text/css "access plus 1 month"
ExpiresByType application/javascript "access plus 1 month"
</IfModule>
Это снизит нагрузку на сервер и ускорит загрузку страниц.
Типичные ошибки при публикации базы 1С на Apache
| Ошибка | Причина | Решение |
|---|---|---|
| 500 Internal Server Error | Неправильный путь к модулю wsap24.so | Проверьте путь в LoadModule и версию платформы. Посмотрите логи Apache: tail -f /var/log/apache2/error.log |
| 404 Not Found | Некорректная директива Location или путь к .vrd | Убедитесь, что путь в <Location> совпадает с URL. Проверьте, существует ли файл .vrd |
| Нет доступа к базе данных | Неверные параметры в .vrd или база не запущена | Проверьте параметр connect.url. Убедитесь, что служба rphost запущена: systemctl status srv1cv83* |
| Модуль _1cws_module не загружается | Несовместимость версии модуля с Apache | Используйте wsap24.so для Apache 2.4. Для старых версий Apache (2.2) нужен wsap22.so |
| Страница авторизации не открывается | Неправильные права на .vrd или каталог базы | Установите владельца www-data (Ubuntu) или apache (CentOS): chown www-data:www-data /var/www/1c/* |
| Ошибка «Превышено время ожидания» | Недостаточно ресурсов сервера или перегрузка | Увеличьте MaxRequestWorkers, добавьте RAM. Проверьте нагрузку: top, htop |
Рекомендации по выбору серверного оборудования
Производительность веб-публикации 1С зависит от конфигурации сервера. Чем больше пользователей, тем выше требования к железу.
| Количество пользователей | Процессор | Оперативная память | Диски | Примечания |
|---|---|---|---|---|
| 5-10 | 4 ядра, Intel Xeon E-2200 или аналог | 16 ГБ DDR4 ECC | 2×500 ГБ SSD RAID 1 | Подойдёт для небольших компаний и филиалов |
| 10-50 | 8-12 ядер, Intel Xeon Silver 4200/4300 | 32-64 ГБ DDR4 ECC | 4×1 ТБ NVMe RAID 10 | Средние компании, активная работа с документами |
| 50-150 | 2×12-16 ядер, Intel Xeon Gold 5300/6300 | 128-256 ГБ DDR4 ECC | 6×2 ТБ NVMe RAID 10 | Крупные компании, высоконагруженные системы |
| 150+ | 2×20+ ядер, Intel Xeon Platinum или AMD EPYC | 512 ГБ и выше | 8×4 ТБ NVMe RAID 10 + СХД | Холдинги, распределённая инфраструктура, кластеры |
Для 1С критична скорость дисковой подсистемы — выбирайте SSD или NVMe с высоким IOPS. Оперативная память тоже важна: платформа активно кеширует данные. Если бюджет ограничен, лучше взять процессор среднего класса и больше памяти, чем наоборот.
Для подбора конфигурации под конкретную задачу воспользуйтесь конфигуратором серверов на нашем сайте — он учитывает нагрузку, количество пользователей и специфику ПО.
Мониторинг и обслуживание
После публикации базы настройте мониторинг работы веб-сервера и платформы 1С.
Мониторинг Apache
Включите модуль status для просмотра статистики:
sudo a2enmod status sudo systemctl restart apache2
Добавьте в конфигурацию виртуального хоста:
<Location /server-status>
SetHandler server-status
Require local
</Location>
Теперь статистика доступна по адресу http://localhost/server-status. Для удалённого доступа добавьте IP администратора:
Require ip 192.168.1.100
Мониторинг платформы 1С
Используйте технологический журнал 1С для анализа ошибок и производительности. Включите его в конфигураторе или через файл logcfg.xml:
<config>
<log location="/var/log/1c/tech_log" history="24">
<event>EXCP</event>
<event>CONN</event>
<event>SDBL</event>
<property name="processName">rphost</property>
</log>
</config>
Создайте каталог логов:
sudo mkdir -p /var/log/1c/tech_log sudo chown usr1cv8:grp1cv8 /var/log/1c/tech_log
Анализируйте логи регулярно — они покажут узкие места и ошибки подключения.
Частые вопросы
Можно ли публиковать несколько баз 1С на одном веб-сервере Apache?
Да, можно. Для каждой базы создайте отдельный файл .vrd и добавьте блок <Location> в конфигурацию виртуального хоста. Например: <Location /base1> для первой базы и <Location /base2> для второй. Укажите разные пути к .vrd-файлам. Убедитесь, что у сервера достаточно ресурсов — каждая база потребляет оперативную память и процессорное время.
Почему веб-интерфейс 1С работает медленно через Apache?
Причин может быть несколько: недостаточно оперативной памяти на сервере, медленные диски (HDD вместо SSD), перегрузка процессора, низкая пропускная способность сети. Проверьте нагрузку командой top или htop. Если загрузка CPU выше 80% — нужен более мощный процессор. Если используется swap (подкачка) — добавьте RAM. Если IOPS дисков низкий — переходите на NVMe. Также увеличьте параметр MaxRequestWorkers в настройках Apache.
Нужно ли настраивать firewall для публикации 1С на Apache?
Да, обязательно. Откройте порты 80 (HTTP) и 443 (HTTPS) для внешнего доступа. Если используете клиент-серверный вариант 1С, откройте порт 1540-1541 для подключения к кластеру (только из доверенных сетей). Для Ubuntu/Debian используйте ufw: sudo ufw allow 80/tcp, sudo ufw allow 443/tcp. Для CentOS/RHEL — firewalld: sudo firewall-cmd --permanent --add-service=http, sudo firewall-cmd --permanent --add-service=https, sudo firewall-cmd --reload. Закройте все остальные порты для безопасности.
