Обновление 1С:Предприятие на веб-сервере — задача, требующая особой аккуратности. В отличие от локальных установок, здесь ошибка может привести к простою бизнес-процессов всей компании. Веб-серверы (Apache, Nginx, IIS) взаимодействуют с через специальные модули (mod_1c, wsap24), и их некорректное обновление может нарушить работу published-приложений, REST-сервисов или даже всего кластера.

В этой статье мы разберём уникальный алгоритм обновления 1С на веб-сервере с учётом специфики работы с published-базами и внешними подключениями, который минимизирует риски сбоев. Вы узнаете, как подготовить инфраструктуру, какие настройки сохранять, а какие сбрасывать, а также как проверить работоспособность системы после апгрейда. Особое внимание уделено резервному копированию конфигураций веб-расширений — их потеря может сделать базу недоступной для внешних пользователей.

Материал ориентирован на администраторов и системных инженеров, работающих с веб-клиентом, тонким клиентом через браузер или мобильными приложениями, интегрированными с по HTTP(S). Если вы обновляете только платформу на рабочих станциях — эта инструкция избыточна. Если же у вас published-базы или веб-сервисы — читайте внимательно.

1. Подготовка к обновлению: что нужно сделать до начала

Первый шаг — аудит текущей инфраструктуры. Уточните:

  • 🔹 Версию 1С:Предприятия (8.3.x.x) на сервере и клиентах. Используйте команду
    wmic product where "name like '1C%%'" get version
    для Windows или rpm -qa | grep 1c-enterprise для Linux.
  • 🔹 Тип веб-сервера (Apache 2.4, Nginx 1.2x, IIS 10+) и версию модуля mod_1c/wsap24.
  • 🔹 Список published-баз (проверьте файл default.vrd в папке конфигурации веб-сервера).
  • 🔹 Наличие обратных прокси (например, HAProxy или Cloudflare), которые могут кешировать старые данные.

Критическая ошибка многих администраторов — игнорирование совместимости версий. Например, 1С:Предприятие 8.3.22 требует mod_1c не ниже 2.2.3, а для работы с TLS 1.3 нужен Apache 2.4.37+. Проверьте требования в официальной таблице совместимости (ссылка ведёт на ресурс , но актуальные данные уточняйте в личном кабинете партнёра).

📊 Какой веб-сервер вы используете для 1С?
Apache
Nginx
IIS
Другой

Резервное копирование должно включать:

  • 📁 Папку с конфигурацией веб-сервера (например, /etc/apache2/sites-enabled/ или C:\inetpub\wwwroot\).
  • 📄 Файлы default.vrd, webinst.xml и *.conf из директории published-приложений.
  • 🗃️ Саму базу (через 1CV8.exe DESIGNER /D"ИмяБазы" /DumpIB "путь\к\файлу.dt").
  • 🔑 Сертификаты SSL (если используете https).
💡

Создайте тестовую виртуальную машину с копией продуктивного сервера. Это позволит протерестировать обновление без риска для основной системы.

2. Обновление платформы 1С на сервере

Процесс обновления платформы зависит от операционной системы. Рассмотрим оба варианта.

Для Windows Server

1. Скачайте дистрибутив 1С:Предприятия с портала 1С:ИТС (раздел "Программные продукты").

2. Запустите установщик с правами администратора. Выберите "Обновление существующей установки".

3. В разделе "Компоненты" обязательно отметьте:

  • 🖥️ Сервер 1С:Предприятия (если используется кластер серверов).
  • 🌐 Веб-сервер (для Apache/Nginx) или Расширение для IIS.
  • 🔧 Инструменты администрирования (для 1cv8 и rac).

4. После установки перезагрузите сервер.

Для Linux (Debian/Ubuntu, CentOS)

1. Обновите репозитории:

sudo apt update  # Для Debian/Ubuntu

sudo yum update # Для CentOS/RHEL

2. Удалите старые пакеты (если требуется):

sudo apt remove 1c-enterprise83-common 1c-enterprise83-ws

3. Установите новые пакеты:

sudo apt install 1c-enterprise83=8.3.23.1234 1c-enterprise83-ws=2.2.4-1

4. Перезапустите службы:

sudo systemctl restart apache2  # или nginx, sr1cv83

☑️ Проверка после обновления платформы

Выполнено: 0 / 4

3. Обновление веб-расширений (mod_1c, wsap24)

Веб-расширения — это "мост" между веб-сервером и . Их обновление требует особой осторожности, так как несовместимость версий может привести к ошибкам 500 Internal Server Error или 403 Forbidden.

Для Apache:

  1. Скачайте актуальный mod_1c.so с портала (раздел "Технологическая платформа → Веб-серверы").
  2. Замените файл в директории модулей (например, /usr/lib/apache2/modules/).
  3. Обновите конфигурацию в apache2.conf:
LoadModule one_c_module /usr/lib/apache2/modules/mod_1c.so

SetHandler one_c

...

Для Nginx:

  1. Скачайте wsap24 (для 1С:Предприятия 8.3.20+).
  2. Распакуйте архив в /opt/1cv8/wsap24/.
  3. Обновите конфиг nginx.conf:
location /1c {

fastcgi_pass 127.0.0.1:9000;

include /opt/1cv8/wsap24/conf/nginx.conf.inc;

...

}

Для IIS:

  1. Запустите установщик 1C_Enterprise_8.3.23_WS.exe.
  2. Выберите "Обновить расширение для IIS".
  3. Перезапустите пул приложений в Диспетчере IIS.
Что делать если после обновления веб-расширений появляется ошибка 403?

Ошибка 403 после обновления mod_1c или wsap24 чаще всего связана с неверными правами на папки. Проверьте:

1. Права на директорию published-баз (должны быть 755 для Linux или Full Control для IIUSR в Windows).

2. Наличие файла .htaccess с корректными директивами (иногда старые правила конфликтуют с новой версией модуля).

3. Логи веб-сервера на предмет ошибок типа client denied by server configuration.

4. Обновление published-баз и веб-сервисов

Published-базы — это виртуальные директории, через которые пользователи получают доступ к через браузер. Их конфигурация хранится в файле default.vrd (для Apache/Nginx) или в настройках IIS.

После обновления платформы или веб-расширений необходимо:

  1. Переопубликовать базы через Консоль администрирования 1С (rac):
rac cluster --cluster=ИмяКластера list

rac infobase --infobase=ИмяБазы --publish=path=/1c_base,port=80

  1. Проверить права доступа к папке published-базы (например, /var/www/1c_base/).
  2. Обновить веб-сервисы (если используются) через 1CV8.exe DESIGNER /WSUpdate.

Типичная ошибка: после обновления published-базы могут выдавать 404 Not Found, если путь в default.vrd указывает на старую версию платформы. В этом случае:

  • 🔧 Откройте default.vrd в текстовом редакторе.
  • 🔍 Найдите строку <bin 1cv8="/opt/1cv8/8.3.20.1549/bin/">.
  • 📝 Замените путь на актуальный (например, /opt/1cv8/8.3.23.1234/bin/).

5. Проверка работоспособности после обновления

Обновление завершено, но это не значит, что система готова к работе. Проведите полную диагностику:

Компонент Как проверить Ожидаемый результат
Сервер 1С systemctl status sr1cv83 (Linux) или Службы Windows Статус active (running)
Веб-сервер apache2ctl -t или nginx -t Syntax OK
Published-базы Открыть в браузере http://server/1c_base Открывается форма авторизации 1С
Веб-сервисы Выполнить тестовый запрос через curl или Postman Ответ в формате XML/JSON без ошибок
Логи tail -f /var/log/apache2/error.log или Журналы Windows Отсутствие ошибок segmentation fault или access denied

Если обнаружены ошибки:

  • 🛑 Ошибки 500/502: проверьте логи веб-сервера на наличие Premature end of script headers (часто связано с несовместимостью mod_1c).
  • 🔄 Бесконечная загрузка: очистите кеш браузера или проверьте настройки proxy_timeout в Nginx.
  • 🔒 Ошибки SSL: обновите сертификаты или проверьте протокол в ssl_protocols (должен быть TLSv1.2 TLSv1.3).
💡

После обновления обязательно протестируйте все критические сценарии: авторизацию пользователей, работу отчётов, интеграцию с внешними системами (например, эквайринг или ЕГАИС).

6. Решение типичных проблем после обновления

Даже при правильном обновлении могут возникнуть неожиданные ошибки. Рассмотрим самые распространённые.

Ошибка: "Не удалось подключиться к информационной базе"

Причины:

  • 🔌 Не запущен сервис 1С:Предприятия (systemctl start sr1cv83).
  • 📂 Неверный путь к базе в default.vrd.
  • 🔒 Блокировка фаерволом (проверьте порты 1540-1541, 1560-1591).

Ошибка: "Неверная версия платформы"

Решение:

  1. Проверьте версию платформы в Конфигураторе (Справка → О программе).
  2. Обновите конфигурацию базы (если требуется) через 1CV8.exe DESIGNER /UpdateDBCfg.
  3. Перезапустите кластер серверов :
rac cluster --cluster=ИмяКластера restart

Ошибка: "403 Forbidden" при доступе к published-базе

Чаще всего связана с:

  • 🔐 Неправильными правами на папку (для Apache: chown -R www-data:www-data /var/www/1c_base/).
  • 📜 Ошибками в .htaccess (удалите или пересоздайте файл).
  • 🛡️ Настройками SELinux (для CentOS: setenforce 0 для теста).
💡

Если после обновления пропали стили в веб-клиенте (белый экран, отсутствует CSS), очистите кеш браузера или добавьте в конфиг веб-сервера директиву для отключения кеширования статических файлов: Header set Cache-Control "no-cache" (для Apache).

7. Оптимизация производительности после обновления

Новые версии часто требуют перенастройки веб-сервера для оптимальной работы. Рекомендации:

  • 🚀 Увеличьте лимиты памяти для php-fpm (если используется):
pm.max_children = 50

pm.max_requests = 500

memory_limit = 512M

  • ⚡ Включите кеширование для статических файлов в Nginx:
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {

expires 30d;

add_header Cache-Control "public, no-transform";

}

  • 🔧 Оптимизируйте настройки кластера :
rac cluster --cluster=ИмяКластера tune --work-processes=8 --cache-size=2048

Для published-баз с высокой нагрузкой рассмотрите:

  • 🔄 Балансировку нагрузки через HAProxy или Nginx.
  • 📦 Разделение статики и динамики: статические файлы (.js, .css) отдавайте через CDN.
  • 🛡️ Защиту от DDoS: настройте ограничение запросов в секунду (limit_req_zone в Nginx).

8. Автоматизация обновлений (для опытных администраторов)

Ручное обновление утомительно, особенно если у вас несколько серверов. Автоматизируйте процесс с помощью скриптов.

Пример скрипта для Debian/Ubuntu (сохраните как update_1c.sh):

#!/bin/bash

Остановка сервисов

systemctl stop apache2

systemctl stop sr1cv83

Обновление платформы

wget https://releases.1c.ru/version/8.3.23.1234/1c-enterprise83_8.3.23-1234_amd64.deb

dpkg -i 1c-enterprise83_8.3.23-1234_amd64.deb

Обновление mod_1c

wget https://releases.1c.ru/version/8.3.23.1234/mod_1c_2.2.4_apache2.4_amd64.deb

dpkg -i mod_1c_2.2.4_apache2.4_amd64.deb

Перезапуск сервисов

systemctl start sr1cv83

systemctl start apache2

Проверка

apache2ctl -t && echo "Apache config OK" || echo "Apache config ERROR"

systemctl status sr1cv83

Для Windows можно использовать PowerShell:

# Остановка сервисов

Stop-Service -Name "Apache2.4", "1C:Enterprise 8.3 Server Agent" -Force

Установка новой версии

Start-Process -Wait -FilePath "1C_Enterprise_8.3.23.1234.exe" -ArgumentList "/S /v/qn"

Перезапуск сервисов

Start-Service -Name "1C:Enterprise 8.3 Server Agent", "Apache2.4"

Проверка

Get-Service -Name "Apache2.4", "1C:Enterprise 8.3 Server Agent" | Select Name, Status

Автоматизация ускоряет процесс, но всегда тестируйте скрипты на тестовом сервере перед применением в продакшене. Используйте cron (Linux) или Планировщик задач (Windows) для регулярных проверок обновлений.

💡

Автоматические обновления следует применять только для некритичных систем. Для производственных серверов рекомендуется ручной контроль каждой стадии обновления.

FAQ: Частые вопросы по обновлению 1С на веб-сервере

Можно ли обновить только веб-расширение, не трогая платформу?

Технически да, но не рекомендуется. Веб-расширения (mod_1c, wsap24) тестируются с конкретными версиями платформы. Например, mod_1c 2.2.4 может некорректно работать с 1С:Предприятие 8.3.18, хотя физически установится. Проверяйте совместимость в официальной документации.

Как откатиться на предыдущую версию, если после обновления ничего не работает?

Порядок отката:

  1. Восстановите резервные копии default.vrd, конфигов веб-сервера и базы .
  2. Удалите текущую версию платформы (apt remove 1c-enterprise83 или через Панель управления в Windows).
  3. Установите старую версию (сохраните дистрибутивы заранее!).
  4. Перезапустите сервисы и проверьте доступность published-баз.

Если used внешние компоненты (например, для ЕГАИС или 54-ФЗ), их тоже придётся откатить.

Нужно ли обновлять конфигурацию базы после обновления платформы?

Зависит от версии:

  • 🔄 При минорном обновлении (например, 8.3.22.1234 → 8.3.22.1500) конфигурацию обновлять не обязательно.
  • 🔧 При майорном обновлении (например, 8.3.21 → 8.3.23) требуется обновление конфигурации через Конфигуратор (Администрирование → Обновление конфигурации базы данных).

Игнорирование обновления конфигурации может привести к ошибкам типа "Несоответствие версии конфигурации и базы данных".

Как проверить, что веб-сервисы 1С работают после обновления?

Используйте:

  1. Тестовый HTTP-запрос через curl:
curl -X POST http://server/1c_ws/ws/ServiceName.ws \

-H "Content-Type: text/xml" \

-d '@request.xml'

  1. Проверку в браузере: откройте http://server/1c_ws/ws/ServiceName.ws?wsdl — должен отобразиться WSDL-описание.
  2. Логи веб-сервера: ищите строки с POST /1c_ws/ и кодом ответа 200.

Если сервис возвращает 500, проверьте:

  • Права на папку /var/www/1c_ws/ (или аналог в Windows).
  • Наличие файла webinst.xml с корректными путями.
  • Логи (/var/log/1C/1cv8.log).
Можно ли обновлять 1С на веб-сервере без остановки работы пользователей?

Технически нет, но можно минимизировать простой:

  1. Используйте резервный сервер: разверните копию системы на другом хосте, обновите её, затем перенаправьте трафик через DNS или балансировщик.
  2. Обновляйте в нерабочее время (ночь/выходные).
  3. Применяйте "горячее" обновление для кластеров :
rac cluster --cluster=ИмяКластера rolling-update --version=8.3.23.1234

Эта команда обновляет рабочие процессы кластера по одному, не останавливая сервер полностью.