Администрирование · 9 мин
Как опубликовать базу 1С на веб-сервере Apache в Ubuntu
Пошаговая инструкция по публикации базы 1С на Apache в Ubuntu: установка модулей, настройка default.vrd, права доступа, проверка работы и типичные ошибки.
Публикация информационной базы 1С на веб-сервере Apache под управлением Ubuntu позволяет пользователям работать с программой через браузер или тонкий клиент по протоколу HTTP, без установки полноценной платформы на каждое рабочее место. Это стандартный сценарий для небольших и средних компаний, где сервер 1С развёрнут на Linux — связка экономит лицензии на Windows Server и при этом стабильно работает при грамотной настройке.
Процедура состоит из нескольких этапов: установка Apache и модулей платформы 1С, настройка конфигурационного файла виртуального хоста, создание файла публикации default.vrd, выдача прав доступа и проверка результата. Каждый этап имеет свои подводные камни — от несовпадения разрядности модулей до ошибок с правами на каталог базы.
Ниже разобран полный цикл публикации файловой базы и базы, работающей через сервер 1С:Предприятие, на Apache 2.4 в Ubuntu. Команды приведены для терминала с правами sudo.
Что потребуется перед началом работы
Перед настройкой убедитесь, что на сервере уже установлена платформа 1С:Предприятие для Linux той же версии, под которой работает база. Веб-расширение 1С поставляется вместе с дистрибутивом платформы — отдельно скачивать его не нужно. Также потребуются права root или пользователя с доступом к sudo.
Проверьте разрядность: модуль веб-расширения и Apache должны совпадать по архитектуре. В современных версиях Ubuntu Apache ставится 64-битным, поэтому используйте 64-битную платформу 1С. Несовпадение разрядности — одна из самых частых причин ошибки «500 Internal Server Error» сразу после публикации.
Команда dpkg -l | grep 1c покажет установленные пакеты 1С
Смешение 32/64 бит приводит к ошибке загрузки модуля
Пользователь www-data должен иметь доступ на чтение и запись
Установка Apache и модулей 1С
Установите веб-сервер из стандартного репозитория Ubuntu. После установки служба запустится автоматически, проверить её статус можно через systemctl.
sudo apt update && sudo apt install apache2 -y
sudo systemctl status apache2Далее нужно найти модуль веб-расширения wsap24.so в каталоге установленной платформы. Обычно он расположен по пути вида /opt/1cv8/x86_64/8.3.XX.XXXX/wsap24.so, где 8.3.XX.XXXX — номер вашей версии платформы. Если каталога с модулем нет, значит при установке платформы не был выбран компонент веб-расширения — доустановите его из дистрибутива.
Скопируйте модуль в отдельный каталог, например /opt/1cv8/wsap, или оставьте на месте — главное, чтобы Apache мог его прочитать. Убедитесь, что на файл установлены права, доступные для чтения всем пользователям.
Настройка виртуального хоста Apache
Создайте или отредактируйте конфигурацию виртуального хоста. Для публикации 1С удобно использовать отдельный файл, например /etc/apache2/sites-available/1c.conf. В нём подключается модуль wsap24.so и указывается псевдоним, по которому база будет доступна в браузере.
LoadModule _1cws_module /opt/1cv8/x86_64/8.3.22.1709/wsap24.so
Alias "/base" "/var/www/base"
<Directory "/var/www/base">
AllowOverride All
Options None
Require all granted
SetHandler 1c-application
ManagedApplicationDescriptor "/var/www/base/default.vrd"
</Directory>Директива SetHandler 1c-application передаёт обработку запросов модулю 1С, а ManagedApplicationDescriptor указывает на файл публикации default.vrd. Путь к wsap24.so замените на актуальный для вашей версии платформы — номер сборки в пути будет отличаться.
После сохранения файла активируйте сайт и перезапустите Apache: sudo a2ensite 1c && sudo systemctl restart apache2. Если синтаксис конфигурации содержит ошибку, команда apache2ctl configtest покажет её до перезапуска.
Создание файла публикации default.vrd
Файл default.vrd описывает, какую базу публиковать и как к ней подключаться. Для файловой базы содержимое минимально: указывается строка подключения с путём к каталогу базы.
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
base="/base"
ib="File="/srv/1c/bases/trade";"/>Для клиент-серверной базы строка подключения будет другой: вместо File указываются параметры Srvr (адрес сервера 1С) и Ref (имя базы в кластере). Атрибут base должен совпадать с псевдонимом Alias из конфигурации Apache — по этому адресу база откроется в браузере.
Проще всего сгенерировать default.vrd автоматически: в конфигураторе 1С на Windows-машине или через утилиту webinst для Linux есть команда публикации, которая создаёт корректный файл. Ручное редактирование допустимо, но следите за экранированием кавычек и кодировкой UTF-8.
Права доступа и запуск
Пользователь www-data, под которым работает Apache, должен иметь полный доступ к каталогу файловой базы: чтение, запись и создание файлов. Ограничьтесь выдачей прав именно на каталог базы, не расширяйте права на всю систему.
- 1Назначьте владельцем каталога базы пользователя www-data: sudo chown -R www-data:www-data /srv/1c/bases/trade
- 2Установите права: sudo chmod -R 755 /srv/1c/bases/trade (при необходимости записи журналов — 775)
- 3Проверьте конфигурацию: sudo apache2ctl configtest
- 4Перезапустите Apache: sudo systemctl restart apache2
- 5Откройте в браузере адрес http://имя-сервера/base и авторизуйтесь
Если база клиент-серверная, права на каталог базы не нужны, но сервер 1С:Предприятие должен быть доступен по сети с машины, где работает Apache, а в кластере должен быть настроен рабочий процесс, принимающий подключения веб-расширения.
Проверка работы и типичные ошибки
После перезапуска Apache откройте адрес публикации в браузере. Признак успеха — появление окна авторизации 1С или загрузка веб-клиента. Если вместо этого отображается ошибка, смотрите журнал Apache: /var/log/apache2/error.log — там почти всегда указана причина.
Как проверить результат
Появляется окно авторизации 1С или интерфейс веб-клиента
Ошибка 500, 404 или бесконечная загрузка
Нет записей об ошибках загрузки wsap24.so
Сообщения вида Cannot load module или permission denied
Подключение по адресу http://сервер/base проходит успешно
Ошибка соединения с информационной базой
Веб-клиент, тонкий клиент и ограничения публикации
Опубликованная база доступна двумя способами: через браузер (веб-клиент) и через тонкий клиент, где в качестве строки подключения указывается URL публикации. Тонкий клиент обычно работает быстрее и поддерживает больше возможностей интерфейса, а веб-клиент не требует установки ничего, кроме браузера.
Учтите ограничения: через веб-клиент недоступны некоторые функции конфигуратора и администрирования, а файловая база при активной многопользовательской работе через веб-сервер нагружает диск сильнее, чем клиент-серверный вариант. Для десятков одновременных пользователей надёжнее перевести базу на сервер 1С с СУБД PostgreSQL или MS SQL.
Сравнение вариантов доступа
Подходит для удалённых пользователей без установки ПО; ограниченная функциональность и зависимость от браузера
Быстрее и стабильнее, полный интерфейс; требует установки тонкого клиента на рабочее место
Для большого числа пользователей; сложнее в настройке, нужны сервер 1С и СУБД
Часто задаваемые вопросы
Можно ли опубликовать несколько баз 1С на одном Apache?
Да. Для каждой базы создаётся отдельный блок Alias и Directory со своим псевдонимом и своим файлом default.vrd. Модуль wsap24.so подключается один раз на весь сервер. Каждая база будет доступна по своему адресу, например /trade и /accounting.
Нужен ли отдельный сертификат HTTPS?
Для работы внутри локальной сети можно обойтись HTTP, но при доступе из интернета HTTPS обязателен: логины и данные передаются в открытом виде. Настройте виртуальный хост на порт 443 с сертификатом, например бесплатным от Let's Encrypt, и перенаправляйте HTTP на HTTPS.
Почему веб-клиент работает медленнее тонкого клиента?
Веб-клиент отрисовывает интерфейс в браузере и передаёт больше данных при каждом обращении к серверу. На слабых каналах и медленных клиентских машинах разница заметна. Если скорость критична, используйте тонкий клиент по тому же адресу публикации.
Что делать, если после обновления платформы публикация перестала работать?
Обновите путь к модулю wsap24.so в конфигурации Apache — номер версии в каталоге платформы изменился. Затем перезапустите Apache. Если старая версия платформы была удалена, модуль из её каталога недоступен, и Apache может вообще не запуститься до исправления конфигурации.
Можно ли использовать Nginx вместо Apache?
Напрямую — нет: веб-расширение 1С для Linux поставляется в виде модуля именно для Apache. Nginx можно поставить перед Apache как обратный прокси для HTTPS и балансировки, но обработку запросов 1С всё равно будет выполнять Apache с модулем wsap24.so.
Что важно запомнить
Публикация базы 1С на Apache в Ubuntu сводится к установке Apache, подключению модуля wsap24.so нужной версии платформы, настройке виртуального хоста с файлом default.vrd и выдаче прав пользователю www-data. Проверяйте результат через браузер и журнал ошибок Apache, а при доступе извне обязательно включайте HTTPS.