Biz Linuxda ma'lumotlar bazasi va veb-xizmatlarini nashr qilish bilan 1c serverini ko'taramiz

Biz Linuxda ma'lumotlar bazasi va veb-xizmatlarini nashr qilish bilan 1c serverini ko'taramiz

Bugun men sizga linux debian 1 da 9c serverni veb-xizmatlarni nashr etish orqali qanday ko'tarishni aytmoqchiman.

1c veb-xizmatlari nima?

Veb-xizmatlar boshqa axborot tizimlari bilan integratsiya qilish uchun foydalaniladigan platforma mexanizmlaridan biridir. Bu SOA (xizmatga yo'naltirilgan arxitektura) - xizmatlarga yo'naltirilgan arxitekturani qo'llab-quvvatlash vositasi bo'lib, u ilovalar va axborot tizimlarini integratsiyalashning zamonaviy standartidir. Aslida, bu ma'lumotlarga ega bo'lgan html sahifasini yaratish imkoniyatidir, keyinchalik unga boshqa har qanday dastur orqali kirish va olish mumkin.

Taroziga soling - tez ishlaydi (hatto juda katta hajmdagi ma'lumotlar bilan ham), nisbatan qulay.

Kamchiliklari - sizning 1c dasturchingiz ma'lumotlar bazasi uchun veb-xizmatni yozish paytida sizga uzoq vaqt norozi bo'ladi. Bu narsa yozuvda juda o'ziga xosdir.

Men sizga qanday yozishni aytmayman veb-xizmati... Men uni Linuxda server konsolidan qanday nashr etishni, shuningdek, Linuxda 1c serverni o'rnatish haqida bir oz aytib beraman.

Shunday qilib, bizda debian 9 netinst bor, keling, boshlaylik:

PostgresPro-ni o'rnating (E'tibor bering, u bepul emas va faqat imkoniyatlar bilan tanishishning bir qismi sifatida tarqatiladi):

# apt-get update -y

# apt-get install -y wget gnupg2 || apt-get install -y gnupg

# wget -O - http://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO | apt-key add -

# echo deb http://repo.postgrespro.ru/pgpro-archive/pgpro-11.4.1/debian stretch main > /etc/apt/sources.list.d/postgrespro-std.list

# apt-get update -y
# apt-get install -y postgrespro-std-11-server
# /opt/pgpro/std-11/bin/pg-setup initdb
# /opt/pgpro/std-11/bin/pg-setup service enable
# service postgrespro-std-11 start
# su - postgres
# /opt/pgpro/std-11/bin/psql -U postgres -c "alter user postgres with password 'ВашПароль';"

Keling, postgresql ga faqat localhostni emas, balki barcha manzillarni tinglashni aytaylik

# nano /var/lib/pgpro/std-11/data/postgresql.conf

Izohni olib tashlang va qaysi manzillarni tinglashni o'zgartiring:

...
#tinglash_manzillari = 'localhost'
...

ning

...
tinglash_manzillari = '*'
...

Keyinchalik, tarmog'imiz foydalanuvchilariga tizimga kirishga ruxsat beramiz

# nano /var/lib/pgpro/std-11/data/pg_hba.conf

Keling, o'zgartiraylik:

# IPv4 mahalliy ulanishlari:
barcha mezbon 127.0.0.1/32 md5

haqida

barcha mezbon 192.168.188.0/24 md5
barcha mezbon 127.0.0.1/32 md5

1s uchun turli Postgres o'rnatishlari haqida ko'proq o'qishingiz mumkin shu yerda.

Keyinchalik biz serverga 1 ni qo'yamiz.

1c saytidan yuklab olingan arxivni serverga yuklang (mening holimda deb64_8_3_15_1534.tar.gz)


# tar -xzf deb64_8_3_15_1534.tar.gz

# dpkg -i *.deb

yana bir nechta kichik narsalar:

# apt install imagemagick unixodbc libgsf-bin

Endi Apache2 ni o'rnatamiz

# apt install apache2

Ma'muriyat konsoli yoki 1c mijozi orqali biz ma'lumotlar bazasini yaratamiz va konfiguratsiyamizni to'ldiramiz ...

Endi biz ma'lumotlar bazasini nashr qilamiz:

1s bilan jildga o'ting.

# cd /opt/1C/v8.3/x86_64/

./webinst -publish -apache24 -wsdir Test -dir /var/www/test/ -connstr  "Srvr=10.7.12.108;Ref=test;" -confPath /etc/apache2/apache2.conf

Biz var/www/test/-ga chiqamiz va u erda nima paydo bo'lganini ko'ramiz.

# cd /var/www/test
# nano default.vrd

«

v8.1c.ru/8.2/virtual-resource-system"
href="http://www.w3.org/2001/XMLSchema">www.w3.org/2001/XMLSchema"
href="http://www.w3.org/2001/XMLSchema-instance">www.w3.org/2001/XMLSchema-instance"
base="/Test"
ib="Srvr=192.168.188.150;Ref=Test;">
<standardOdata enable=«false»
reuseSessions="autouse"
sessionMaxAge="20"
poolSize = "10"
poolTimeout="5"/>

«

Bu 1c veb-mijozini ishga tushirish uchun zarur bo'lgan sxemalar ... endi siz bizning test ma'lumotlar bazasiga brauzerdan "http://ServerAddress/Test" manzili bo'yicha kirishingiz mumkin (holat muhim! Bu Linux) yoki Mijozning http://ServerAddress/Test”dagi “asosiy joylashuv turi” manzili va mijoz nashr etilgan maʼlumotlar bazasi bilan ishlaydi.

BUT

Ammo veb-xizmatlar haqida nima deyish mumkin? (mening test konfiguratsiyamda ulardan ikkitasi bor: buxgalteriya hisobi bilan ma'lumotlar almashinuvi va shu nomdagi kompaniyaning wms tizimi bilan toplog integratsiyasi uchun WebBuh).

Keling, vrd faylimizga bir nechta satr qo'shamiz ...


v8.1c.ru/8.2/virtual-resource-system"
href="http://www.w3.org/2001/XMLSchema">www.w3.org/2001/XMLSchema"
href="http://www.w3.org/2001/XMLSchema-instance">www.w3.org/2001/XMLSchema-instance"
base="/TestWeb"
ib="Srvr=IP_addres;Ref=TestWebServ">
<standardOdata enable=«false»
reuseSessions="autouse"
sessionMaxAge="20"
poolSize = "10"
poolTimeout="5"/>

# Вот тут начинается код который публикует веб-сервисы
<point name="WebBuh" # Имя веб-сервиса в конфигураторе
alias="Web_buh.1cws" # Web_buh.1cws - алиас веб-сервиса в браузере
enable="true" # дальше я думаю строки и так понятны
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
<point name="TopLog" # второй веб сервис
alias="toplog.1cws" # toplog.1cws
enable="true"
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>

saqlash.

Va endi bizning veb-xizmatimiz "http://ServerAddress/Test/Web_buh.1cws?"

Nega buni qo'l bilan qilish kerak edi?

Bizning serverimiz grafik qobiqsiz bo'lganligi sababli, unda konfiguratorni ishga tushirish ishlamaydi va shunga mos ravishda uni oddiy vositalar yordamida nashr etadi. Mijozda o'rnatilgan masofaviy konfigurator serverda veb-xizmatlarni nashr etmaydi. Shuning uchun biz yuqorida tavsiflangan shablonga muvofiq konfiguratsiyani qo'lda tahrirlashimiz kerak.

.vrd yaratish uchun skript - Rahmat TihonV

Manba: www.habr.com

a Izoh qo'shish