Настройка

Под капотом управляемых форм. Весьма хорошая статья. Основные неясные моменты рассмотрены.

Пошаговая инструкция настройки Web-сервисов для 1Сv8.1 и IIS 7.5/7.0

По этой инструкции удалось настроить IIS 8.0.

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

Оказалось, что web-сервисы, опубликованные под IIS работают очень медленно. Когда я опубликовал те же самые сервисы под Apache, отклик стал практически мгновенным. При этом, публикация под Apache настраивается даже проще, чем под IIS.

В случае с 1С версии 8.1 нужно использовать старый Apache версии 2.2.x, 2.4 не захотел работать, ругался на dll модуля 1С для Apache (на оба варианта). Найти в интернете дистрибутив Apache 2.2.x быстро мне не удалось, поэтому я решил использовать тот, который нашёл на сервере apps-srv-1. Я просто скопировал папку и отредактировал httpd.conf. Инсталляция не нужна, сервис можно установить командой:

httpd.exe -k install

Если использовать Apache, скачанный по ссылке с этой страницы, нужно учесть следующие особенности:

  • В настройках прописано, что он слушает порт 90. Это сделано на случай, если он будет установлен на систему, где уже работает IIS, по умолчанию слушающий порт 80.
  • В настройках прописанно подключение dll 1с по пути C:\Program Files (x86)\1cv81\bin\wsap22.dll. Если путь отличается, нужно изменить эту настройку.
  • В подпапке htdocs уже содержится папка 1c. Для единообразия, в ней нужно будет создать подпапку имени той системы, веб-сервисы которой будут публиковаться.

Для настройки публикации нужно:

  1. Прописать загрузку модуля 1С в httpd.conf:
LoadModule _1cws_module "C:/Program Files (x86)/1cv81/bin/wsap22.dll"
  1. Настроить каталог для публикации:
Alias /1c "C:/Apache22/htdocs/1c"
<Location /1c>
    DirectorySlash Off
    SetHandler 1cws-process
    Allow from all
</Location>
  1. Желательно прописать имя сервера, например:
ServerName apps-srv-2.invest.ru:90

Опубликованные сервисы будут доступны по адресу:

http://<server>/1c

Также можно публиковать в подкаталоги каталога 1c.

./gradlew wrapper --gradle-version 4.0

Подключить репозиторий EPEL:

sudo yum install epel-release

Установить и включить bash completion:

sudo yum install bash-completion bash-completion-extras
source /etc/profile.d/bash_completion.sh

Установить JDK:

sudo yum install java-1.8.0-openjdk

sudo firewall-cmd --add-port 10100/tcp
sudo firewall-cmd --runtime-to-permanent

sudo firewall-cmd --add-rich-rule="rule family='ipv4' source address='185.71.71.50' port protocol='tcp' port='8280' reject"

sudo useradd --no-create-home --home-dir /dev/null --shell /bin/nologin matrix

sudo adduser username
sudo passwd username
sudo usermod -aG wheel username

ssh-keygen -t rsa
ssh-copy-id kbakaras@devel

Команды нужно выполнять находясь внутри папки git:

sudo chmod -R u=rwX,g=rwX,o=rX ../git
sudo find ../git -type d -exec chmod ug+s {} \;