1С8:Публикация информационной базы 1С на веб-сервере — различия между версиями
м (→См. также) |
(→См. также) |
||
(не показано 25 промежуточных версий 5 участников) | |||
Строка 1: | Строка 1: | ||
<noinclude>[[Категория: Установка и обновление|*08]] [[Категория: Мобильные приложения]]</noinclude> | <noinclude>[[Категория: Установка и обновление|*08]] [[Категория: Мобильные приложения]]</noinclude> | ||
+ | {| align="right" | ||
+ | | __TOC__ | ||
+ | |} | ||
Публикация информационной базы 1С на веб-сервере нужна для того, чтобы: | Публикация информационной базы 1С на веб-сервере нужна для того, чтобы: | ||
* работать с базой удаленно по интернету; | * работать с базой удаленно по интернету; | ||
* подключаться к базе, используя мобильные приложения. | * подключаться к базе, используя мобильные приложения. | ||
− | {{notice|Действия выполняются на сервере под правами администратора. Для работы по интернету | + | {{notice|Действия выполняются на сервере под правами администратора. Для работы по интернету необходимо, чтобы было настроено сетевое оборудование.}} |
+ | == Порядок публикации ИБ == | ||
Порядок действий: | Порядок действий: | ||
# Выполните установку веб-сервера IIS или Apache. | # Выполните установку веб-сервера IIS или Apache. | ||
#* IIS работает быстрее, чем Apache. (https://forum.infostart.ru/forum9/topic222705/) | #* IIS работает быстрее, чем Apache. (https://forum.infostart.ru/forum9/topic222705/) | ||
− | #* Apache. Рекомендуется к установке версия | + | #* Apache. Рекомендуется к установке версия 2.4. Разрядность должна соответствовать разрядности клиентской платформы 1С. |
# Запустите службу Apache на сервере и проверьте доступность: с компьютера, находящегося в одной сети с сервером, в адресной строке браузера введите адрес сервера или его имя. Должна загрузиться страница с текстом «It's work!». | # Запустите службу Apache на сервере и проверьте доступность: с компьютера, находящегося в одной сети с сервером, в адресной строке браузера введите адрес сервера или его имя. Должна загрузиться страница с текстом «It's work!». | ||
# На сервере запустите публикуемую базу в режиме конфигуратора. Выберите пункт меню '''Администрирование — Публикация на веб-сервере'''. | # На сервере запустите публикуемую базу в режиме конфигуратора. Выберите пункт меню '''Администрирование — Публикация на веб-сервере'''. | ||
Строка 50: | Строка 54: | ||
== Коды ошибок при работе с веб-сервером == | == Коды ошибок при работе с веб-сервером == | ||
− | '''500''' — ошибка доступа к веб-сервису. Для исправления обычно достаточно переопубликовать информационную базу на веб-сервере. | + | '''500''' — ошибка доступа к веб-сервису. Для исправления обычно достаточно переопубликовать информационную базу на веб-сервере. Подробнее посмотреть можно в логах веб-сервера error.log |
+ | : Если у вас на сервере используется операционная система Astra Linux и в логе ошибок зафиксирована проблема '''Authentication not configured''', то: | ||
+ | :: Для версии ОС 1.6, 1.7, 4.7, 8.1 Отключение авторизации можно задать в файле /etc/apache2/apache2.conf поменять строку #AstraMode on на AstraMode off. | ||
+ | '''Syntax error on line ХХХ of /etc/apache2/apache2.conf: API module structure '_1cws_module' in file /opt/1cv8/x86_64/8.3.24.1368/wsap22.so is garbled - expected signature 41503234 but saw 41503232 - perhaps this is not an Apache module DSO, or was compiled for a different Apache version?''' - в настройках публикации базы данных 1С указана версию Apache отличная от установленной. Необходимо перепубликовать базу данных на установленную версию вебсервера. | ||
+ | : [[Файл:Выбор вебсервера для публикации.png]] | ||
+ | |||
+ | == Публикация базы без авторизации == | ||
+ | Отключение авторизации — только часть мероприятий по настройке публикации. Обычно требуется для обеспечения работы отдельных http-сервисов. Например, KintAPI или ЕГИСЗ. При отключении авторизации в обязательном порядке необходимо отключить публикацию доступа для клиентских приложений. Рекомендуем в настройках публикации оставить активным только публикуемый сервис. | ||
+ | |||
+ | [[Файл:Kintapipub.png]] | ||
+ | |||
+ | Так будут выглядеть настройки публикации для сервися KintAPI. | ||
+ | |||
+ | Когда база будет опубликована, в указанном для публикации каталоге будет создан файл default.vrd. Найдите в файле строку с параметром ib и отредактируйте его значение. Допишите usr=Логин;pwd=Пароль. Где логин — это имя пользователя с которым при работе с сервисом будет происходить авторизация, а Пароль — пароль к этой учётной записи. | ||
+ | |||
+ | [[Файл:Authdisabled.png]] | ||
+ | |||
+ | == Как опубликовать одну базу 1с на веб-сервисе несколько раз == | ||
+ | При публикации отдельных web или http-сервисов может потребоваться отключение авторизации и доступа клиентских приложений. Если при этом необходимо обеспечить работу с публикацией базы 1С через тонкий или web-клиент, требуется создать отдельную публикацию. Для этого: | ||
+ | * Запустите «1С:Предприятие». | ||
+ | * Добавьте информационную базу в список ещё раз, указав другое наименование. | ||
+ | * Запустите базу в режиме Конфигуратора. | ||
+ | * Выберите пункт меню '''Администрирование — Публикация на веб-сервере'''. | ||
+ | * Укажите имя публикации (не должно повторять имя первой публикации). | ||
+ | * Укажите каталог публикации (необходимо создать отдельный каталог для этой публикации). | ||
+ | * Завершите публикацию, нажав кнопку '''''Опубликовать'''''. | ||
== См. также == | == См. также == | ||
− | * | + | * [https://its.1c.ru/db/v8318doc#bookmark:adm:TI000000196 Описание процесса публикации базы] |
− | |||
* \\demo\Видеозаписи\Широбоков Сергей\Как опубликовать базу на ENTRY.mp4 — памятка для сотрудников Кинт | * \\demo\Видеозаписи\Широбоков Сергей\Как опубликовать базу на ENTRY.mp4 — памятка для сотрудников Кинт | ||
− | * [https://youtu.be/4RdZJmBsEJ4 Обмен данными между «Кинт: Управление санаторием» и «1С:Бухгалтерия 8» через API] | + | * [https://youtu.be/4RdZJmBsEJ4 Видео "Обмен данными между «Кинт: Управление санаторием» и «1С:Бухгалтерия 8» через API"] |
Текущая версия на 09:18, 2 июля 2025
Публикация информационной базы 1С на веб-сервере нужна для того, чтобы:
- работать с базой удаленно по интернету;
- подключаться к базе, используя мобильные приложения.
Действия выполняются на сервере под правами администратора. Для работы по интернету необходимо, чтобы было настроено сетевое оборудование. |
Порядок публикации ИБ
Порядок действий:
- Выполните установку веб-сервера IIS или Apache.
- IIS работает быстрее, чем Apache. (https://forum.infostart.ru/forum9/topic222705/)
- Apache. Рекомендуется к установке версия 2.4. Разрядность должна соответствовать разрядности клиентской платформы 1С.
- Запустите службу Apache на сервере и проверьте доступность: с компьютера, находящегося в одной сети с сервером, в адресной строке браузера введите адрес сервера или его имя. Должна загрузиться страница с текстом «It's work!».
- На сервере запустите публикуемую базу в режиме конфигуратора. Выберите пункт меню Администрирование — Публикация на веб-сервере.
- Заполните параметры:
- Укажите имя публикации. Выберите каталог для сохранения данных публикации, по которому она будет доступна по сети.
- Если снять галочку «Публиковать доступ для клиентских приложений», то к базе будет невозможно подключиться по веб-ссылке в обычном пользовательском режиме через браузер или платформу. Такой вариант публикации базы выбирают, если требуется опубликовать только HTTP-сервис, например, API.
- Закладку Web-сервисы оставьте без изменений. На закладке http-сервисы выберите необходимые сервисы и нажмите кнопку Опубликовать.
- Включите галочку KintAPI (KintAPI.hs), если планируется подключение к этой базе по API (КУС).
- ЕГИСЗ — для интеграции с системой https://egisz.rosminzdrav.ru/.
- В адресной строке браузера наберите http://[адрес_сервера]/[имя_публикации].
Важно. В дальнейшем в настройке нужно использовать имя публикации точно такое, с каким она была опубликована — соблюдая регистр символов. |
Если база успешно опубликована и веб-сервер запущен, появится окно ввода логина и пароля пользователя для входа в вашу базу. Пользователь должен быть добавлен в список пользователей информационной базы.
Если произвести авторизацию не представляется возможным, можно произвести публикацию базы с беcпарольной аутентификацией (когда пользователь и его пароль прописаны на веб-сервере в default.vrd
), но в этом случае следует учитывать, что любой пользователь, у которого будет ссылка на неё, сможет заходить в базу через режим 1С: Предприятие, если соответствующие права у него имеются. Для отключения запроса пароля нужно в файле публикации Default.vrd прописать логин/пароль по умолчанию, пример: ib="Srvr="SERVERNAME";Ref="BASE_NAME";usr="Администратор";pwd="12345";enable="false";".
Возможные проблемы
- Публикация базы на IIS не работает.
- Решение: проверить разрядность wsisapi.dll (Модуль расширения веб-сервера 1С). Возможно в файле web.config публикации прописана ссылка на dll из другой разрядности. Должно соответствовать разрядность платформы. Попробовать добавить/убрать "(x86)"
- После обновления платформы не работает расширение для обмена данными.
- Решение: проверьте установлены ли права на использование HTTP-сервиса и назначена ли пользователю соответствующая роль.
- Для этого:
- 1. В 1С:Конфигураторе откройте настройки расширения «Кинт: Обмен данными».
- 2. Раскройте ветку HTTP-сервиса «ОбменДанными_API».
- 3. Откройте дополнительные свойства для метода «GetData».
- 4. Во вкладке «Права» установите флаг на право использования.
- 5. Повторите шаги 3 и 4 для метода «PostData».
- 6. В меню «Администрирование» откройте список пользователей.
- 7. Откройте настройки пользователя и на вкладке «Прочие» в списке доступных ролей установите флаг на роли «ОбменДанными_ОсновнаяРоль».
Коды ошибок при работе с веб-сервером
500 — ошибка доступа к веб-сервису. Для исправления обычно достаточно переопубликовать информационную базу на веб-сервере. Подробнее посмотреть можно в логах веб-сервера error.log
- Если у вас на сервере используется операционная система Astra Linux и в логе ошибок зафиксирована проблема Authentication not configured, то:
- Для версии ОС 1.6, 1.7, 4.7, 8.1 Отключение авторизации можно задать в файле /etc/apache2/apache2.conf поменять строку #AstraMode on на AstraMode off.
Syntax error on line ХХХ of /etc/apache2/apache2.conf: API module structure '_1cws_module' in file /opt/1cv8/x86_64/8.3.24.1368/wsap22.so is garbled - expected signature 41503234 but saw 41503232 - perhaps this is not an Apache module DSO, or was compiled for a different Apache version? - в настройках публикации базы данных 1С указана версию Apache отличная от установленной. Необходимо перепубликовать базу данных на установленную версию вебсервера.
Публикация базы без авторизации
Отключение авторизации — только часть мероприятий по настройке публикации. Обычно требуется для обеспечения работы отдельных http-сервисов. Например, KintAPI или ЕГИСЗ. При отключении авторизации в обязательном порядке необходимо отключить публикацию доступа для клиентских приложений. Рекомендуем в настройках публикации оставить активным только публикуемый сервис.
Так будут выглядеть настройки публикации для сервися KintAPI.
Когда база будет опубликована, в указанном для публикации каталоге будет создан файл default.vrd. Найдите в файле строку с параметром ib и отредактируйте его значение. Допишите usr=Логин;pwd=Пароль. Где логин — это имя пользователя с которым при работе с сервисом будет происходить авторизация, а Пароль — пароль к этой учётной записи.
Как опубликовать одну базу 1с на веб-сервисе несколько раз
При публикации отдельных web или http-сервисов может потребоваться отключение авторизации и доступа клиентских приложений. Если при этом необходимо обеспечить работу с публикацией базы 1С через тонкий или web-клиент, требуется создать отдельную публикацию. Для этого:
- Запустите «1С:Предприятие».
- Добавьте информационную базу в список ещё раз, указав другое наименование.
- Запустите базу в режиме Конфигуратора.
- Выберите пункт меню Администрирование — Публикация на веб-сервере.
- Укажите имя публикации (не должно повторять имя первой публикации).
- Укажите каталог публикации (необходимо создать отдельный каталог для этой публикации).
- Завершите публикацию, нажав кнопку Опубликовать.
См. также
- Описание процесса публикации базы
- \\demo\Видеозаписи\Широбоков Сергей\Как опубликовать базу на ENTRY.mp4 — памятка для сотрудников Кинт
- Видео "Обмен данными между «Кинт: Управление санаторием» и «1С:Бухгалтерия 8» через API"