Создание списка выбора конфигураций 1С, опубликованных как веб-приложения

e0fcb5b97356240d991cb6052f55f39c.jpg

Новая задача, связанная с 1С. Дано: сервер 1С, на нём есть несколько конфигураций 1С, опубликованных как веб-приложения. Для входа в конфигурацию нужно проходить по ссылкам вида:

http://192.168.1.2/config

где config — это имя конфигурации, под которым она опубликована.

Как я уже упоминал выше, конфигураций несколько, а некоторые пользователи пользуются сразу двумя, а то и тремя, и выбирать конфигурации, ковыряясь в закладках браузеров не всегда удобно.

Изучив содержимое конфигурационных файлов веб-сервера (в моём случае это сервер apache2) и каталога с данными (опять же в моём случае /var/www). Настройки каждой конфигурации 1С располагались по своим каталогам и названия каталогов совпадали с путём указанным в url. Адресу http://192.168.1.2/config соответствовал путь /var/www/config. Я пришёл к выводу, что можно легко организовать выбор конфигурации путём написания одного небольшого скрипта, который необходимо поместить в каталог с данными, настроенным по умолчанию создателями моего дистрибутива Linux (/var/www/html). Скрипт, по моей задумке, должен перебирать каталоги и искать в них файл настроек, опубликованного веб-приложения (default.vrd). При обнаружении настроек он добавит ссылку на конфигурацию в список, который будет показан пользователю. Писать решил на php, так как на сервере для этого было всё предустановлено заранее.

Далее, открыв файл настроек (default.vrd) от одной из конфигураций, который оказался в формате xml, я пришёл к выводу, что можно добавить ещё и небольшое описание каждой конфигурации для удобства пользователей. Поскольку в формате xml можно использовать комментарий, я решил его добавить в файл последней строкой () и вписать в него название конфигурации. Если файл настроек не будет содержать последней строкой комментарий, то пользователю будет показано имя каталога с конфигурацией.

Итак, задача ясна, пути решения определены. Можно приступать к написанию кода. Через некоторое время был готов следующий скрипт:




    
    
    
    1С конфигурации на сервере