Мои сайты
Частые вопросы
Полезные ссылки
Операционные системы
Программное обеспечение
Оборудование
СУБД
Кулинария
Дата создания: 2023/01/13 06:08 (C) mihanik
Иногда возникает необходимость убрать публикацию клиент-серверной базы 1С на веб-сервере Apache (например, при переносе базы, смене адреса или тестировании). Чтобы корректно отключить публикацию, нам понадобятся следующие параметры:
Для удобства запишем нужные параметры в переменные bash.
# Имя виртуального каталога (алиас базы) 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"
Чтобы не вводить версию вручную, можно автоматически определить её из статуса запущенного сервиса 1С:
# Имя юнита сервера 1С (укажите свое, если отличается) srv1c="srv1cv85.service" # Извлекаем версию из пути к исполняемому файлу в systemctl ver1c=$(systemctl status $srv1c --no-pager | grep -oP 'x86_64/\K[^/]+' | head -1) echo "Определена версия 1С: $ver1c"
Теперь, когда все данные собраны, выполняем последовательность команд.
# 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"
grep -i "$wsdir" "$apacheconf"
(команда не должна вернуть никакого текста).
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"