Vi reiser en 1c-server med publisering av en database og webtjenester på Linux

Vi reiser en 1c-server med publisering av en database og webtjenester på Linux

I dag vil jeg fortelle deg hvordan du setter opp en 1c-server på Linux Debian 9 med publisering av webtjenester.

Hva er 1C webtjenester?

nettjenester er en av plattformmekanismene som brukes for integrasjon med andre informasjonssystemer. Det er et middel til å støtte SOA (Service-Oriented Architecture), en tjenesteorientert arkitektur som er en moderne standard for integrering av applikasjoner og informasjonssystemer. I hovedsak er dette muligheten til å lage en html-side med data, som deretter kan nås av et hvilket som helst annet program og hentes.

Fordeler - det fungerer raskt (selv med en ganske stor mengde data), og er relativt praktisk.

Ulemper - 1C-programmereren din vil beklage deg mye og i lang tid mens han skriver en webtjeneste for databasen din. Saken er veldig sær i skrift.

Jeg vil ikke fortelle deg hvordan du skriver nettjeneste... Jeg skal fortelle deg hvordan du publiserer det på Linux fra serverkonsollen, og også litt om installasjon av 1C-server på Linux.

Og så, vi har debian 9 netinst, la oss komme i gang:

Installer PostgresPro (Vær oppmerksom på at det ikke er gratis, og distribueres kun som en del av å bli kjent med funksjonene):

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

La oss fortelle postgresql å lytte til alle adresser og ikke bare localhost

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

La oss fjerne kommentarer og endre hvilke adresser vi skal lytte til:

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

...
listen_addresses = '*'
...

La oss deretter la brukere fra nettverket vårt logge på

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

La oss endre:

# IPv4 lokale tilkoblinger:
vert for alle alle 127.0.0.1/32 md5

vert for alle alle 192.168.188.0/24 md5
vert for alle alle 127.0.0.1/32 md5

Du kan lese mer om ulike Postgres installasjoner for 1c her.

Deretter installerer vi 1c server.

Last opp arkivet som er lastet ned fra 1c-nettstedet til serveren (i mitt tilfelle deb64_8_3_15_1534.tar.gz)


# tar -xzf deb64_8_3_15_1534.tar.gz

# dpkg -i *.deb

et par småting til:

# apt install imagemagick unixodbc libgsf-bin

La oss nå installere Apache2

# apt install apache2

Gjennom administrasjonskonsollen eller gjennom 1c-klienten lager vi en database og laster opp vår konfigurasjon...

Nå publiserer 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

La oss gå til var/www/test/ og se hva som 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"/>

«

Dette er ordningene som trengs for å starte 1c-webklienten... nå kan du gå til vår testdatabase fra en nettleser på adressen "http://ServerAddress/Test" (case er viktig! dette er Linux) eller spesifisere i klienten "database location type"-adressen " http://ServerAddress/Test", og klienten vil jobbe med den publiserte databasen.

MEN

Hva med webtjenester? (i min testkonfigurasjon er det to av dem: WebBuh for datautveksling med regnskap og toplogg-integrasjon med wms-systemet til selskapet med samme navn).

Vel, la oss legge til et par linjer i vrd-filen vår...


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

la oss lagre det.

Og nå er nettjenesten vår tilgjengelig på "http://ServerAddress/Test/Web_buh.1cws?"

Hvorfor måtte du gjøre det for hånd?

Siden serveren vår ikke har et grafisk skall, vil det ikke være mulig å kjøre konfiguratoren på den, og følgelig publisere med standard midler. Den eksterne konfiguratoren, som er plassert på klienten, publiserer ikke webtjenester på serveren. Derfor må vi redigere konfigurasjonen manuelt i henhold til malen beskrevet ovenfor.

Skript for å generere .vrd - Takk skal du ha TihonV

Kilde: www.habr.com

Legg til en kommentar