Установка Apache для 1С:Предприятие 8.3 на Linux | Пошаговая инструкция | AdminWiki

Установка Apache для 1С:Предприятие 8.3 на Linux: Полное руководство

17 декабря 2025 9 мин. чтения #1С:Предприятие #apache #devops #linux #postgresql #веб-сервер #настройка сервера

Запуск 1С:Предприятие 8.3 в веб-режиме на Linux требует связки из двух ключевых компонентов: сервера приложений 1С и веб-сервера, выступающего в роли посредника. Apache HTTP Server — классический, надежный выбор для этой задачи. В этой статье мы разберем весь процесс от установки базовых компонентов до финальной настройки рабочего окружения.

Представь, что это пошаговый чек-лист от старшего коллеги. Мы пройдем путь от чистого сервера до полностью рабочего кластера 1С, обслуживающего пользователей через браузер.

Подготовка системы и установка базовых компонентов

Перед тем как начать установку Apache для 1С предприятие 8.3, необходимо подготовить операционную систему. Мы будем рассматривать процесс на примере Ubuntu 20.04/22.04 LTS или CentOS/RHEL 8/9. Логика одинакова для большинства дистрибутивов.

1. Обновление системы и установка зависимостей

Первым делом обновим пакеты и установим необходимые для компиляции и работы утилиты.

bash
# Для Debian/Ubuntu
sudo apt update && sudo apt upgrade -y
sudo apt install -y wget curl gnupg2 lsb-release ca-certificates \
  build-essential libssl-dev libpcre2-dev \
  apache2 apache2-dev # Установим Apache для последующей сборки модуля

# Для RHEL/CentOS/Rocky Linux/AlmaLinux
sudo dnf update -y
sudo dnf install -y wget curl epel-release
sudo dnf groupinstall -y "Development Tools"
sudo dnf install -y openssl-devel pcre2-devel \
  httpd httpd-devel

2. Установка сервера 1С:Предприятие 8.3

Ключевой этап — установка сервера 1С предприятия на Linux. 1С предоставляет собственные репозитории для популярных дистрибутивов.

Важно: Убедись, что у тебя есть лицензия и доступ к дистрибутивам 1С:Предприятие для Linux. Процесс установки может незначительно отличаться в зависимости от точной версии (8.3.20, 8.3.21 и т.д.).
bash
# Пример для Ubuntu/Debian (замени ссылку на актуальную)
sudo wget -qO- http://deb.1c.ru/1c_repository.key | sudo apt-key add -
sudo echo "deb http://deb.1c.ru/ubuntu $(lsb_release -rs) main" | sudo tee /etc/apt/sources.list.d/1c.list
sudo apt update
sudo apt install -y 1c-enterprise83-server 1c-enterprise83-ws

Пакет 1c-enterprise83-ws содержит компоненты для работы в веб-режиме, которые нам понадобятся.

3. Установка и настройка PostgreSQL

Для полноценной работы базы данных требуется установка сервера 1С предприятия 8.3 postgresql. Рекомендуется использовать версию PostgreSQL не ниже 12.

bash
# Установка PostgreSQL 15 на Ubuntu
sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget -qO- https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo tee /etc/apt/trusted.gpg.d/pgdg.asc
sudo apt update
sudo apt install -y postgresql-15 postgresql-server-dev-15

# Создание пользователя и базы данных для 1С
sudo -u postgres psql -c "CREATE USER user_1c WITH PASSWORD 'StrongPassword123' CREATEDB;"
sudo -u postgres psql -c "CREATE DATABASE db_1c OWNER user_1c;"

# Настройка аутентификации в pg_hba.conf (обычно /etc/postgresql/15/main/pg_hba.conf)
# Добавь строку для локальных подключений:
# local   db_1c     user_1c                              md5

sudo systemctl restart postgresql

Сборка и настройка модуля Apache для 1С

Сердце связки — это динамический модуль apache2 (mod_1c или wsap24), который позволяет Apache взаимодействовать с сервером приложений 1С. Давай разберем процесс установки Apache 2.4 для 1С предприятие 8.3.

1. Поиск и подготовка исходных кодов модуля

Исходники модуля обычно находятся в каталоге установки 1С.

bash
# Найдем путь к исходникам модуля Apache
find /opt/1C -name "*wsap*.so" -o -name "*wsap*.c" 2>/dev/null
# Чаще всего исходники лежат здесь:
# /opt/1C/v8.3/x86_64/ws/wsap24

# Перейдем в директорию с исходниками (путь может отличаться!)
cd /opt/1C/v8.3/x86_64/ws/wsap24
ls -la
# Должны увидеть файлы: Makefile, wsap24.c, config.m4 и др.

2. Компиляция модуля

Соберем модуль, используя apxs2 (для Debian/Ubuntu) или apxs (для RHEL).

bash
# Для Ubuntu/Debian
sudo apxs2 -c -i -a wsap24.c

# Для RHEL/CentOS
sudo apxs -c -i -a wsap24.c

# Проверим, что модуль появился и подключен
# Ubuntu:
ls -la /usr/lib/apache2/modules/mod_wsap24.so
sudo apache2ctl -M | grep wsap24

# RHEL:
ls -la /etc/httpd/modules/mod_wsap24.so
sudo httpd -M | grep wsap24
Осторожно: Если компиляция завершилась с ошибкой, проверь версии Apache и библиотек. Возможно, потребуется адаптировать исходный код под новую версию API Apache. В сложных случаях можно использовать готовые модули из репозиториев сообщества или от 1С.

3. Настройка виртуального хоста Apache для 1С

Создадим конфигурационный файл виртуального хоста, который будет обрабатывать запросы к веб-клиенту 1С.

apache
# /etc/apache2/sites-available/1c-enterprise.conf (Ubuntu)
# или /etc/httpd/conf.d/1c-enterprise.conf (RHEL)


    ServerName 1c.mydomain.local
    DocumentRoot /var/www/html

    # Директивы для модуля 1С
    WSAP24_Server "localhost"
    WSAP24_Port "1541"
    WSAP24_ServerTimeout "30"

    # Местоположение для обработки запросов 1С
    
        SetHandler wsap24-handler
    

    # Статические файлы веб-клиента (если используются)
    Alias /1c/ws "/opt/1C/v8.3/x86_64/ws/"
    
        Require all granted
        Options Indexes FollowSymLinks
    

    ErrorLog ${APACHE_LOG_DIR}/1c-error.log
    CustomLog ${APACHE_LOG_DIR}/1c-access.log combined

Активируем сайт и перезапустим Apache:

bash
# Ubuntu
sudo a2ensite 1c-enterprise.conf
sudo systemctl restart apache2

# RHEL
sudo systemctl restart httpd

# Проверим, что Apache слушает порт 80
sudo ss -tlnp | grep :80

Настройка кластера серверов 1С:Предприятие

Теперь настроим сам кластер серверов 1С, который будет обрабатывать бизнес-логику. Это завершающий этап установки сервера 1С предприятия 8.3 на linux.

1. Запуск и первоначальная настройка сервисов 1С

bash
# Запустим основные сервисы 1С
sudo systemctl start srv1cv83    # Основной сервер
sudo systemctl start ras         # Сервер администрирования
sudo systemctl enable srv1cv83 ras

# Проверим статус
sudo systemctl status srv1cv83 ras --no-pager -l

2. Создание кластера и рабочего сервера через консоль

Используем утилиту ras для управления кластером.

bash
# Создадим новый кластер
/opt/1C/v8.3/x86_64/ras cluster insert \
  --cluster=http://localhost:1540 \
  --name="MainCluster" \
  --host=localhost \
  --port=1541 \
  --login=Администратор \
  --pwd=""

# Добавим рабочий сервер в кластер
/opt/1C/v8.3/x86_64/ras server insert \
  --cluster=http://localhost:1540 \
  --name="MainServer" \
  --host=localhost \
  --port=1541 \
  --login=Администратор \
  --pwd=""

3. Регистрация веб-сервера в кластере

Это ключевой шаг, который связывает Apache и сервер приложений 1С.

bash
# Зарегистрируем веб-сервер
/opt/1C/v8.3/x86_64/webinst -publish -apache24 -wsdir /1c -dir "/opt/1C/v8.3/x86_64/ws" -connstr "http://localhost:1541"

# Альтернативно, можно использовать прямой вызов ras
/opt/1C/v8.3/x86_64/ras web-app-registration \
  --cluster=http://localhost:1540 \
  --name="WebApp" \
  --folder="/1c" \
  --location="http://1c.mydomain.local/1c" \
  --login=Администратор \
  --pwd=""

Проверка работоспособности и устранение неполадок

После завершения установки 1С предприятия на linux необходимо убедиться, что вся цепочка работает корректно.

Чек-лист проверки:

  • Apache: sudo systemctl status apache2 (должен быть active)
  • Сервер 1С: sudo systemctl status srv1cv83 (должен быть active)
  • Сеть: sudo ss -tlnp | grep -E ':80|:1540|:1541' (порты должны слушаться)
  • Модуль Apache: sudo apache2ctl -M | grep wsap24 (модуль должен быть загружен)
  • Веб-доступ: Открой в браузере http://IP_СЕРВЕРА/1c. Должна появиться страница веб-клиента 1С.

Частые проблемы и их решения

Проблема Возможная причина Решение
Ошибка 403 Forbidden при доступе к /1c Неправильные права доступа к каталогам или настройки Directory в Apache Проверь Require all granted в конфиге Apache и права на /opt/1C/v8.3/x86_64/ws/
Модуль wsap24 не загружается Ошибка компиляции или конфликт версий библиотек Проверь логи Apache (/var/log/apache2/error.log). Пересобери модуль с подробным выводом: sudo apxs2 -c -i -a -Wc,"-Wall" -Wl,"-Wall" wsap24.c
Сервер 1С не запускается Нехватка лицензии или проблемы с портами Проверь наличие лицензии (/var/1C/licenses/*.lic). Убедись, что порты 1540 и 1541 свободны.

Часто задаваемые вопросы (FAQ)

Можно ли использовать Nginx вместо Apache для 1С?

Да, это возможно. Nginx может выступать в роли reverse proxy перед Apache или напрямую взаимодействовать с сервером 1С через модуль ngx_http_1c_module. Однако установка Apache для 1С предприятия остается классическим и наиболее документированным способом, особенно для начинающих администраторов.

Какие порты нужно открыть в фаерволе?

Для базовой работы необходимо открыть:

  • TCP 80/443 — для веб-доступа пользователей через Apache.
  • TCP 1540 — для консоли администрирования кластера (RAS).
  • TCP 1541 — для взаимодействия между сервисами 1С (рабочий сервер).
  • TCP 5432 — если PostgreSQL находится на этом же сервере и нужен удаленный доступ.

Где хранятся логи и как мониторить работу системы?

Логи Apache: /var/log/apache2/ (Ubuntu) или /var/log/httpd/ (RHEL).
Логи сервера 1С: /var/log/1C/ (файлы rphost_*, rmngr_*).
Для мониторинга используй systemctl status, journalctl -u srv1cv83 -f и следи за использованием памяти процессами ragent и rphost.

Как обновить сервер 1С или Apache без простоя?

Рекомендуется использовать схему с балансировщиком нагрузки и несколькими рабочими серверами. Тогда можно поочередно выводить серверы из кластера, обновлять их и возвращать в строй. Для Apache можно использовать graceful restart: sudo apache2ctl graceful.

Заключение

Установка сервера 1С предприятия на linux с веб-доступом через Apache — многоэтапный, но полностью автоматизируемый процесс. Ключевые моменты для успеха:

  1. Тщательная подготовка ОС и установка всех зависимостей.
  2. Корректная сборка модуля wsap24 для твоей версии Apache.
  3. Правильная настройка виртуального хоста Apache и регистрация веб-приложения в кластере 1С.
  4. Поэтапная проверка каждого компонента системы.

Полученная связка (Linux + Apache + 1С:Предприятие + PostgreSQL) образует стабильную, производительную и экономичную платформу для автоматизации бизнеса, которую легко масштабировать и обслуживать.

Поделиться:
Сохранить гайд? В закладки браузера