Публикация информационной базы 1С через Apache. Используй когда пользователь просит опубликовать базу, сервисы, настроить веб-доступ, веб-клиент, открыть в браузере
Генерирует default.vrd, настраивает httpd.conf и запускает Apache HTTP Server для веб-доступа к информационной базе. При необходимости скачивает portable Apache. Идемпотентный — повторный вызов обновляет конфигурацию.
/web-publish [database]
/web-publish dev
/web-publish dev --manual
/web-publish dev --port 9090
Прочитай .v8-project.json из корня проекта и разреши базу:
.v8-project.jsondatabases[].branchesdefaultОБЯЗАТЕЛЬНО передавай все найденные параметры:
-V8Path — из v8path в .v8-project.json. Если не передать, скрипт автоопределит версию платформы, что может выбрать не ту версию-UserName — из поля user найденной записи базы (если есть)-Password — из поля password найденной записи базы (если есть)-ApachePath — из webPath в .v8-project.json (если есть)Если файла .v8-project.json нет — предложи /db-list add.
powershell.exe -NoProfile -File .claude/skills/web-publish/scripts/web-publish.ps1 <параметры>
| Параметр | Обязательный | Описание |
|---|---|---|
-V8Path <путь> | нет | Каталог bin платформы (для wsap24.dll) |
-InfoBasePath <путь> | * | Файловая база |
-InfoBaseServer <сервер> | * | Сервер 1С (для серверной базы) |
-InfoBaseRef <имя> | * | Имя базы на сервере |
-UserName <имя> | нет | Имя пользователя |
-Password <пароль> | нет | Пароль |
-AppName <имя> | нет | Имя публикации (по умолчанию из имени каталога базы) |
-ApachePath <путь> | нет | Корень Apache (по умолчанию tools/apache24) |
-Port <порт> | нет | Порт (по умолчанию 8081) |
-Manual | нет | Не скачивать — только проверить и дать инструкцию |
*— нужен либо-InfoBasePath, либо пара-InfoBaseServer+-InfoBaseRef
Повторный вызов с тем же AppName заменяет публикацию (идемпотентность). Это используется для:
-UserName/web-stop: тот же вызов поднимает Apache обратноЕсли пользователь просит параллельную публикацию под другим пользователем (для тестирования разных наборов прав), добавь суффикс к AppName:
bpdemo, пользователь Иванов → -AppName bpdemo-ivanovbpdemo, пользователь Admin → -AppName bpdemo-admin (или просто bpdemo)Ключевые слова: «ещё одну публикацию», «дополнительно», «параллельно», «под другим пользователем не убирая текущую».
http://localhost:{Port}/{AppName}http://localhost:{Port}/{AppName}/odata/standard.odatahttp://localhost:{Port}/{AppName}/hs/<RootUrl>/...http://localhost:{Port}/{AppName}/ws/<Имя>?wsdl/db-list add# Файловая база
powershell.exe -NoProfile -File .claude/skills/web-publish/scripts/web-publish.ps1 -InfoBasePath "C:\Bases\MyDB" -UserName "Admin"
# С явным именем публикации и портом
powershell.exe -NoProfile -File .claude/skills/web-publish/scripts/web-publish.ps1 -InfoBasePath "C:\Bases\MyDB" -AppName "mydb" -Port 9090
# Серверная база
powershell.exe -NoProfile -File .claude/skills/web-publish/scripts/web-publish.ps1 -InfoBaseServer "srv01" -InfoBaseRef "MyDB" -UserName "Admin" -Password "secret"
# Ручной режим (только инструкция)
powershell.exe -NoProfile -File .claude/skills/web-publish/scripts/web-publish.ps1 -InfoBasePath "C:\Bases\MyDB" -Manual