1С и Linux
Пишу для себя, чтобы не забыть как делал. 95 % рабочее. На комментарии отвечаю, когда увижу.
пятница, 14 сентября 2018 г.
Ubuntu 16.04.5 1c файловый вариант с вебсервером
$ sudo apt update -y
$ sudo apt upgrade -y
$ sudo dpkg -i aksusbd_7.81-1_amd64.deb
Обязательно!
$ sudo reboot
# установка 1с
mkdir -p /tmp/1ctmp
cd /tmp/1ctmp
#sudo apt install imagemagick -y
sudo apt install -y unixodbc libgsf-1-114 libglib2.0
sudo apt install -y xfonts-utils cabextract
sudo dpkg -i fonts-ttf-ms_1.0-eter4ubuntu_all.deb
#sudo apt -f -y install
Два варианта удаления:
# dpkg -l | grep 1c-enterprise83 | awk -F’ ‘ » | xargs dpkg -r
# dpkg -l | grep 1c-enterprise83 | cut -d ‘ ‘ -f 3 | xargs dpkg -r
tar xvzf deb64.tar.gz
tar xvzf client.deb64.tar.gz
sudo dpkg -i 1c*.deb
sudo apt -f -y install
#sudo chown -R usr1cv8:grp1cv8 /opt/1C
#sudo echo -e «pass\npass\n» | sudo passwd usr1cv8
#sudo service srv1cv83 start
———————————————————————————————————-
#sudo service srv1cv83 status
$ sudo reboot
$ sudo apt-get install apache2 -y
$ sudo systemctl status apache2
$ sudo usermod -a -G grp1cv8 www-data
$ sudo usermod -a -G user www-data
$ sudo usermod -a -G www-data user
Создаем директории для vrd-файла:
$ sudo mkdir -p /var/www/demo
база zik /home/user/InfoBase :
$ sudo mkdir -p /var/www/zik
база buh /home/user/InfoBase1 :
$ sudo mkdir -p /var/www/buh
права на базу zik /home/user/InfoBase :
$ sudo chown -R usr1cv8:grp1cv8 /home/user/InfoBase
$ sudo chmod -R 777 /home/user/InfoBase
$ sudo chmod -R g+sw /home/user/InfoBase
права на базу buh /home/user/InfoBase1 :
$ sudo chown -R usr1cv8:grp1cv8 /home/user/InfoBase1
$ sudo chmod -R 777 /home/user/InfoBase1
$ sudo chmod -R g+sw /home/user/InfoBase1
#$ sudo chmod -R u=rw,g=rw,o=r,a+X /home/user/InfoBase1
права на базу demo /home/user/InfoBase2 :
$ sudo chown -R usr1cv8:grp1cv8 /home/user/InfoBase2
$ sudo chmod -R 777 /home/user/InfoBase2
$ sudo chmod -R g+sw /home/user/InfoBase2
права на базу demo1 /home/user/InfoBase3 :
$ sudo chown -R usr1cv8:grp1cv8 /home/user/InfoBase3
$ sudo chmod -R 777 /home/user/InfoBase3
$ sudo chmod -R g+sw /home/user/InfoBase3
$ sudo chmod -R u=rw,g=rw,o=r,a+X /home/user/InfoBase3
Можно опубликовать из конфигуратора
$ sudo /opt/1C/v8.3/x86_64/./1cestart
Можно опубликовать из командной строки:
Переходим в каталог со утилитой публикации веб-клиента:
$ cd /opt/1C/v8.3/x86_64/
$ sudo ./webinst -publish -apache24 -wsdir zik -dir /var/www/zik -connstr «File=»»/home/user/InfoBase»»;» -confpath /etc/apache2/apache2.conf
$ sudo ./webinst -publish -apache24 -wsdir buh -dir /var/www/buh -connstr «File=»»/home/user/InfoBase1″»;» -confpath /etc/apache2/apache2.conf
$ sudo ./webinst -publish -apache24 -wsdir demo -dir /var/www/demo -connstr «File=»»/home/user/InfoBase2″»;» -confpath /etc/apache2/apache2.conf
$ sudo ./webinst -publish -apache24 -wsdir demo1 -dir /var/www/demo1 -connstr «File=»»/home/user/InfoBase3″»;» -confpath /etc/apache2/apache2.conf
#$ sudo chown -R www-data:www-data /var/www
$ sudo systemctl restart apache2
Ниже вариант для работы с командной строкой не совместимый с настройкой из конфигуратора (там редактируется /etc/apache2/apache2.conf)
Вариант для сервера!
Проверим http://host_ip/
________________________________________________
Кроме того, мы можем включить поддержку ssl
для нашего веб-сервера.
Для этого выполните:
$ sudo a2enmod ssl
$ sudo a2ensite default-ssl
Перезагрузка Apache:
$ sudo systemctl restart apache2
________________________________________________
Создаем директорию для vrd-файла:
$ sudo mkdir -p /var/www/ib/demo
А также файл конфигурации Apache:
$ touch /etc/apache2/conf-available/demo.conf
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo -dir ‘/var/www/ib/demo’ -connstr ‘Srvr=»localhost»;Ref=»demo»;’ -confPath /etc/apache2/conf-available/demo.conf
Backup:
# ./webinst -apache24 -wsdir demo -dir ‘/var/www/ib/demo’ -connstr ‘Srvr=»localhost»;Ref=»demo»;’ -confPath /etc/apache2/conf-available/demo.conf
Где /var/www/ib/demo — директория где будет создан vrd-файл, demo — имя ИБ, localhost — адрес сервера 1С:Предпрятие, а /etc/apache2/conf-available/demo.conf — путь до конфигурационного файла Apache.
Подключаем конфигурацию:
# a2enconf demo
Перезагрузка Apache:# systemctl restart apache2
Смотрим:
http://p962_2/demo или https://p962_2/demo ______________________________________________________
Если нужно подключить вторую базу:
Создаем директорию для vrd-файла:
# mkdir -p /var/www/ib/demo1
А также файл конфигурации Apache:
# touch /etc/apache2/conf-available/demo1.conf
Переходим в каталог со утилитой публикации веб-клиента:
# cd /opt/1C/v8.3/x86_64/
Запускаем утилиту:
# ./webinst -apache24 -wsdir demo1 -dir ‘/var/www/ib/demo1’ -connstr ‘Srvr=»localhost»;Ref=»demo1″;’ -confPath /etc/apache2/conf-available/demo1.conf
Backup:
# ./webinst -apache24 -wsdir demo1 -dir ‘/var/www/ib/demo1’ -connstr ‘Srvr=»localhost»;Ref=»demo1″;’ -confPath /etc/apache2/conf-available/demo1.conf
Где /var/www/ib/demo1 — директория где будет создан vrd-файл, demo1 — имя ИБ, localhost — адрес сервера 1С:Предпрятие, а /etc/apache2/conf-available/demo1.conf — путь до конфигурационного файла Apache.
Подключаем конфигурацию:
# a2enconf demo1
Перезагрузка Apache:
# systemctl restart apache2
Настройка веб-сервера Apache под Linux
В отличие от IIS, веб-сервер Apaсhe доступен как для Windows, так и для Linux и позволяет настроить работу публикаций по шифрованному протоколу HTTP.
1. Установка Apache под Linux
Установка веб-сервера и публикация информационной базы для операционной Linux будет продемонстрирована на базе Ubuntu 18.04 LTS. Все, что касается настроить информационной базы не зависит от конкретной версии дистрибутива Linux. Установка же веб-сервера может отличаться.
В данной статье не рассматривается установка и запуск Apache под всевозможные семейства операционных систем Linux. При использовании операционной системы отличной от указанной в статье следуют руководствоваться официальной документацией конкретного вашего дистрибутива.
Итак, предполагается, что есть только что установленная операционная система Ubuntu 18.04 LTS без графического интерфейса пользователя.
Перед тем как продолжить, нужно проверить доступные версии программного обеспечения дистрибутива. Выполняем команду:
В выводе результата команды можно увидеть, что доступны обновления. Рекомендуются их обновить с помощью команды (подсказка «Run ‘apt list –upgradable’»):
По завершению обновления пакетов приложений можно приступить к установке непосредственно веб-сервера.
После этого нужно выполнить команду:
sudo apt install apache2 -y
Необходимо дождаться окончание выполнения команды и убедиться, что в момент установки никаких ошибок не возникло. В данном случае установка прошла без проблем.
Далее нужно проверить, что помимо самой установки, веб-сервер запустился и готов обрабатывать запросы (для данной команды использование sudo не обязательно):
В ответ можно увидеть, что состояние службы active (running). Это значит, что веб-сервер работает в штатном режим и можно переходить к публикации информационной базы с помощью командного интерпретатора bash, либо к генерации самоподписанного сертификата (если в этом есть необходимость).
2. Выпуск самоподписанного сертификата
После установки Apache в операционной системе уже должен быть установлен openssl как зависимость к дистрибутиву. Поэтому можно сразу приступить к генерации сертификата.
Первоначально нужно перейти в директорию хранилища сертификатов с помощью команды:
После чего требуется ввести команду генерации сертификата, где вместо нужно подставить имя компьютера, на котором планируется размещен Apache:
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout .key -out .crt
Во время выполнения команды будет задано несколько вопросов. Для «Common Name (e.g. server FQDN or Your bane)» нужно также указать имя сервера. Остальные поля заполняются произвольно (кроме «Country name» — здесь можно оставить по умолчанию).
3. Публикация информационной базы
Так в данной статье идет настройка публикации информационных баз без использования графического интерфейса, то публикация информационной базы будет также производиться из командного интерпретатора.
Если до этого сервер «1С:Предприятие» был уже установлен на данном компьютере, то следующие 2 шага можно пропустить. Иначе в качестве подготовительной работы нужно скачать последний доступный дистрибутив платформы и распаковать его временную директорию с помощью команды:
После разархивирования нужно инициировать процедуру установки пакетов.
Как только все готово, необходимо перейти к публикации информационной базы. Для этого требуется перейти в директорию установленной платформы и выполнить команду:
В директории платформы следом нужно выполнить команду:
sudo ./webinst -publish -apache24 -wsdir -dir /var/www/ -connstr “Srvr=” -confpath /etc/apache2/apache2.conf
ИМЯ ПУБЛИКАЦИИ – на произвольное имя публикации
ИМЯ СЕРВЕРА – на адрес сервера 1С:Предприятие
ИМЯ БАЗЫ – на имя базы, совпадающим с именем базы зарегистрированной в кластере
После этого следует перейти в директорию публикаций:
cd /etc/apache2/sites-available
С помощью любого удобного редактора нужно отредактировать файл 000-default.conf и добавить в самый конец файла следующий текст настройки:
SSLEngine on SSLCertificateFile /etc/ssl/certs/server1.crt SSLCertificateKeyFile /etc/ssl/certs/server1.key
После добавления нужно сохранить и закрыть файл и выполнить команду для включения модуля ssl для Apache:
И после этого нужно перезапустить Apache и убедиться, что ошибок не возникает.
4. Проверка публикации
Для проверки корректной работы нужно открыть страницу в браузере и перейти по ссылке, которая состоит из двух частей:
- Имя вашего сервера (например, server2).
- Имя публикации базы (которое было указано в окне настройки публикации).
Для таких параметров ссылка будет иметь вид: