Публикация мобильной конфигурации на web-сервере Apache на Linux Ubuntu

Публикация мобильной конфигурации на web-сервере Apache на Linux

В продолжение статьи «Публикация базы 1С на веб-сервере Apache на сервере Linux» (//infostart.ru/public/303420/) расскажу как опубликовать мобильную конфигурацию на web-сервере Apache на операционной системе Linux (Ubuntu).

Что нам для этого понадобится:

1. Сервер (А) на Ubuntu, установленный Apache и платформа 1С 8.3 (как это сделать рассказано в изначальной публикации)

2. Сервер (В) на Windows, с установленной 1С и настроенными портами (как указано в изначальной публикации), конфигурация для мобильного приложения.

 

Что делаем (действия выполняемые на сервере А):

 

1. На сервере А создаем папку «shared’ в корне. В папке Shared создадим каталог для публикации конкретной мобильной конфигурации — «testma». Итоговый пусть к папке будет /shared/testma

Нюанс: папка shared так называется, потому что она будет расшарена для доступа с сервера В (так как он должен будет туда складывать конфигурационные файлы).

2. Для расшаривания папки устанавливаем пакет samba:

    apt-get install samba

3. В файле /etc/samba/smb.conf прописываем общий доступ к нашей папке

   [shara_name]
   comment = comment_to_share
   path = /shared/share
   read only = no
   locking = no
   guest ok = yes
   browseable = yes

где shara_name — это имя папки, которая будет доступна по адресу \ВнутреннийИПСервераАshara_name. Фактически имена вашей папки на сервере А и имя, под которым она будет доступна на сервере В могут отличаться.

4. Перезапускаем службу samba

   service smbd restart

5. Даем права на папку публикации мобильной конфигурации:

   chmod 777 /shares/testma

6. В конфигурационном файле Apache /etc/apache2/httpd.conf прописываем публикацию нашей мобильной конфигурации :

# 1c publication
Alias "/testma" "/shared/testma/"
<Directory "/shared/testma/">
AllowOverride All
Options None
Order allow,deny
Allow from all
DirectoryIndex 1cema.xml
</Directory>

Что делаем (действия выполняемые на сервере В):

7. Создаем папку на сервере В c:public estma

8. В папке c:public estma создаем файл public.bat со следующим содержимым:

net use z: \10.7.7.7shared
copy 1cema.xml z:ordersma1cema.xml
@echo off
echo #k8SjZc9Dxk > ma.xml
set D=%DATE%
set T=%TIME%
set DT=%D:~6,4%%D:~3,2%%D:~0,2%%T:~0,2%%T:~3,2%%T:~6,2%
echo #k8SjZc9Dxk >>ma.xml
copy ma.xml z:ordersma1cemarun.xml

9. В конфигураторе нажимаем «Меню — Конфигурация — Мобильное приложение — Записать в файл» — записываем файл 1cema.xml в папку c:public estma

10. Запускаем на исполнение файл c:public estmapublic.bat

Для последующих обновления публикаций и подаче мобильному приложению команды на перезапуск — повторно выполняем п.9 и п.10

Готово!


12 Comments

  1. izofen

    В этом варианте ключи защиты не потребуются?

    Reply ↓
  2. spezc

    Нет, так как фактически выкладывается хмл мобильной конфигурации

    Reply ↓
  3. HaIIpuKoJIe

    А как опубликовать мобильную конфигурацию если и 1с и апач стоят на 1 сервере ubuntu?

    Reply ↓
  4. spezc

    (3) через параметры командной строки /MAWriteFile

    Reply ↓
  5. HaIIpuKoJIe

    (4) А можно по подробнее, к сожалению Ваша статья единственное что я нашел на эту тему, но она не совсем подходит в моем случае.

    Reply ↓
  6. spezc

    увидел в ЛС сообщении о добавлении комментария с вопросом, однако сам комментарий к публикации не вижу. отвечу так, надеюсь автор вопроса увидит:

    судя по всему — вы пытаетесь получить ХМЛ мобильной конфигурации на основе какой-то стандартной конфигурации. Так не получится. В стандартных конфигурациях очень много объектов и методов, которые отсутствуют в мобильной платформе, взять хотя бы ПоказатьОповещениеПользователя. При компиляции происходит проверка, которая и заканчивается ошибками.

    так что меняйте подход к созданию конфигруции (откажитесь от прямой компиляции десктопной конфигурации) или все такие «моменты», которые недоступны на мобильной платформе — заключайте в директивы «MobileAppClient MobileAppServer»

    Reply ↓
  7. spezc

    (3) у вас есть графияческая оболочка? конфигуратор в убунте можете запустить?

    Reply ↓
  8. HaIIpuKoJIe

    (7) Нет у меня ubuntu сервер 14.04 без графической оболочки.

    Reply ↓
  9. spezc

    Для ОС Linux

    Система будет установлена в каталог /opt/1C/v8.3/i386 в случае 32-разрядной версии или в каталог /opt/1C/v8.3/x86_64 в случае 64-разрядной версии (далее будем называть этот каталог корневым каталогом установки). В этом каталоге создаются остальные каталоги и конфигурационные файлы:

    ● conf – данный каталог содержит конфигурационные файлы, необходимые для работы «1С:Предприятия».

    ● docs – данный каталог содержит сопроводительные файлы на русском и английском языках. Состав файлов может меняться от версии к версии.

    ● licenses – содержит лицензионное соглашение на «1С:Предприятие» на русском (файл 1CEnterpise_ru.htm) и английском языках (файл 1CEnterpise_en.htm), а также лицензионные соглашения на используемые программные компоненты сторонних производителей (этот список может меняться от версии к версии).

    ● readme – данный каталог содержит файлы readme на языках локализации платформы.

    ● utils – содержит дополнительные утилиты, предназначенные для настройки сервера «1С:Предприятия».

    1cv8

    Исполняемый файл толстого клиента или конфигуратора.

    Не может запустить тонкий клиент и веб-клиент.

    Расположение файла:

    ● Для ОС Windows: в каталоге исполняемых файлов конкретной версии.

    ● Для ОС Linux: в корневом каталоге установки.

    Параметры командной строки в пакетном режиме запуска конфигуратора

    /MAWriteFile <имя файла> — записывает xml файл мобильного приложения с заданным именем. Возможно предварительное обновление конфигурации базы данных.

    Reply ↓
  10. HaIIpuKoJIe

    (9) К сожалению не пойму чем эта информация может мне помочь. А если установить графическую оболочку можно будет опубликовать мобильную конфигурацию через конфигуратор?

    Reply ↓
  11. spezc

    (10) выгрузить мобильную конфигурацию можно через «пакетный режим», т.е. через командную строку. вы вызываете исполняемый файл 1С, указываете параметры.

    найдите в справке 1С «Параметры командной строки в пакетном режиме запуска конфигуратора»

    в вашем случае на линуксе нужно выполнить команду что-то типа этой:

    /opt/1C/v8.3/x86_64/1cv8 /MAWriteFile «/myfolder/myMAconfig.xml

    Reply ↓
  12. HaIIpuKoJIe

    (11) Спасибо за наводку, будем пробовать.

    Reply ↓

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *