Отмена публикация клиент-серверной базы на WEB-сервере в Linux

Экспорт в PDF Преобразовать страницу в формат Open Document

Дата создания: 2023/01/13 06:08 (C) mihanik

Иногда возникает необходимость убрать публикацию клиент-серверной базы 1С на веб-сервере Apache (например, при переносе базы, смене адреса или тестировании). Чтобы корректно отключить публикацию, нам понадобятся следующие параметры:

  • Имя виртуального каталога (алиас) базы (параметр -wsdir).
  • Путь к конфигурационному файлу Apache, в котором прописаны правила публикации (актуально, если у вас несколько экземпляров Apache или конфигурация разбита на Include-файлы).
  • Версия платформы 1С, чтобы найти утилиту webinst.

Шаг 1. Задаем переменные

Для удобства запишем нужные параметры в переменные bash.

Примечание: wsdir — это именно алиас базы (например, GUID или заданное имя), а не физический путь на диске.
# Имя виртуального каталога (алиас базы)
wsdir="cc44ebc4-ab3d-4825-af14-8cf7ea6aeb82"
 
# Путь к конфигу Apache (для Debian/Ubuntu это может быть /etc/apache2/apache2.conf)
apacheconf="/etc/httpd/conf/httpd.conf"
 
# Имя сервиса Apache (для Debian/Ubuntu используйте apache2)
apacheservice="httpd.service"

Шаг 2. Определяем версию платформы 1С

Чтобы не вводить версию вручную, можно автоматически определить её из статуса запущенного сервиса 1С:

# Имя юнита сервера 1С (укажите свое, если отличается)
srv1c="srv1cv85.service"
 
# Извлекаем версию из пути к исполняемому файлу в systemctl
ver1c=$(systemctl status $srv1c --no-pager | grep -oP 'x86_64/\K[^/]+' | head -1)
 
echo "Определена версия 1С: $ver1c"

Шаг 3. Отмена публикации

Теперь, когда все данные собраны, выполняем последовательность команд.

Важно: Утилита webinst -delete удаляет записи из конфига Apache, но не удаляет физические файлы публикации с диска. Поэтому в конце мы удалим папку вручную.
# 1. Переходим в папку с утилитами 1С
cd "/opt/1cv8/x86_64/$ver1c/"
 
# 2. Делаем бэкап конфигурации Apache (на всякий случай)
cp "$apacheconf" "${apacheconf}.bak"
 
# 3. Выполняем отмену публикации через webinst
./webinst -delete -apache24 -wsdir "$wsdir" -confPath "$apacheconf"
 
# 4. При необходимости удаляем оставшиеся физические файлы публикации с диска
# (Путь может отличаться в зависимости от ваших настроек, обычно это /var/www/html/ или /opt/1cv8/www/)
# rm -rf "/var/www/html/$wsdir"
 
# 5. Перезагружаем конфигурацию Apache, чтобы изменения вступили в силу
systemctl reload "$apacheservice"

Как проверить, что всё получилось?

  • Убедитесь, что в конфигурационном файле Apache больше нет упоминаний вашего алиаса:
grep -i "$wsdir" "$apacheconf"

(команда не должна вернуть никакого текста).

  • Попробуйте открыть базу в браузере по старому адресу — вы должны получить ошибку 404 Not Found.

Итоговый (немного упрощённый) скрипт

  • Название юнита сервера 1С: srv1c
  • Версия 1С : ver1c
  • Конфигурационный файл: apacheconf
  • Путь к базе: wsdir
srv1c="srv1cv85.service"
ver1c=$(systemctl status $srv1c --no-pager | grep -oP 'x86_64/\K[^/]+' | head -1)
wsdir="cc44ebc4-ab3d-4825-af14-8cf7ea6aeb82"
apacheconf="/etc/httpd/conf/httpd.conf"
cd /opt/1cv8/x86_64/$ver1c/
./webinst -delete -apache24 -wsdir "$wsdir" -confPath "$apacheconf"
systemctl reload "$apacheservice"

Наверх

В моей WIKI постоянно ведётся какая-то работа со статьями.
Если у вас возникли вопросы или замечания,
можете их отправлять на почту support@mihanik.net
Только авторизованные участники могут оставлять комментарии.
программное_обеспечение/1с_предприятие_8/администрирование_1с/отмена_публикация_клиент-серверной_базы_на_web-сервере_в_linux.txt · Последнее изменение: 2026/09/08 04:18 — mihanik
Яндекс.Метрика