Vi rejser en 1c-server med udgivelse af en database og webtjenester på Linux

Vi rejser en 1c-server med udgivelse af en database og webtjenester på Linux

I dag vil jeg gerne fortælle dig, hvordan du opsætter en 1c-server på Linux Debian 9 med udgivelsen af ​​webtjenester.

Hvad er 1C webtjenester?

Webtjenester er en af ​​de platformsmekanismer, der bruges til integration med andre informationssystemer. Det er et middel til at understøtte SOA (Service-Oriented Architecture), en serviceorienteret arkitektur, der er en moderne standard for integration af applikationer og informationssystemer. I bund og grund er dette evnen til at oprette en html-side med data, som derefter kan tilgås af enhver anden applikation og hentes.

Fordele - det virker hurtigt (selv med en ret stor mængde data), og er relativt praktisk.

Ulemper - din 1C-programmør vil brokke sig meget og i lang tid, mens han skriver en webservice til din database. Sagen er meget ejendommelig på skrift.

Jeg vil ikke fortælle dig, hvordan du skriver webservice... Jeg vil fortælle dig, hvordan du udgiver det på Linux fra serverkonsollen, og også lidt om installation af 1C-server på Linux.

Og så har vi debian 9 netinst, lad os komme i gang:

Installer PostgresPro (Bemærk venligst, at det ikke er gratis og distribueres kun som en del af kendskab til mulighederne):

# 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 'ВашПароль';"

Lad os fortælle postgresql at lytte til alle adresser og ikke kun localhost

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

Lad os fjerne kommentarer og ændre, hvilke adresser vi skal lytte til:

...
#listen_addresses = 'localhost'
...

On

...
lytte_adresser = '*'
...

Lad os derefter tillade brugere fra vores netværk at logge ind

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

Lad os ændre:

# IPv4 lokale forbindelser:
vært alle alle 127.0.0.1/32 md5

vært alle alle 192.168.188.0/24 md5
vært alle alle 127.0.0.1/32 md5

Du kan læse mere om forskellige Postgres installationer til 1c her.

Dernæst installerer vi 1c server.

Upload arkivet downloadet fra 1c-webstedet til serveren (i mit tilfælde deb64_8_3_15_1534.tar.gz)


# tar -xzf deb64_8_3_15_1534.tar.gz

# dpkg -i *.deb

et par småting mere:

# apt install imagemagick unixodbc libgsf-bin

Lad os nu installere Apache2

# apt install apache2

Gennem administrationskonsollen eller gennem 1c-klienten opretter vi en database og uploader vores konfiguration...

Nu udgiver vi databasen:

gå til mappen med 1s.

# 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

Lad os gå til var/www/test/ og se, hvad der vises der.

# 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"/>

«

Det er de skemaer, der er nødvendige for at starte 1c-webklienten... nu kan du gå til vores testdatabase fra en browser på adressen "http://ServerAddress/Test" (cases er vigtigt! dette er Linux) eller specificere i klienten "databaseplaceringstype"-adressen " http://ServerAddress/Test", og klienten vil arbejde med den offentliggjorte database.

MEN

Hvad med webtjenester? (i min testkonfiguration er der to af dem: WebBuh til dataudveksling med regnskab og toplog-integration med wms-systemet i virksomheden af ​​samme navn).

Nå, lad os tilføje et par linjer til vores vrd-fil...


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_adresser;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"/>

lad os gemme det.

Og nu er vores webservice tilgængelig på "http://ServerAddress/Test/Web_buh.1cws?"

Hvorfor skulle du gøre det i hånden?

Da vores server ikke har en grafisk shell, vil det ikke være muligt at køre konfiguratoren på den og derfor publicere ved hjælp af standardmidler. Fjernkonfiguratoren, som er placeret på klienten, udgiver ikke webtjenester på serveren. Derfor er vi nødt til at redigere konfigurationen manuelt i henhold til skabelonen beskrevet ovenfor.

Script til generering af .vrd - Tak skal du have TihonV

Kilde: www.habr.com

Tilføj en kommentar