Danas bih vam želio reći kako podići 1c poslužitelj na linux debian 9 s objavljivanjem web usluga.
Što su web usluge 1c?
Prednosti - radi brzo (čak i s prilično velikom količinom podataka), relativno povoljno.
Protiv - vaš 1c programer će dugo gunđati na vas dok piše web servis za vašu bazu podataka. Stvar je vrlo osebujna u pisanju.
Neću ti govoriti kako da pišeš
I tako, imamo debian 9 netinst, počnimo:
Instalirajte PostgresPro (Napominjemo da nije besplatan, te se distribuira samo u sklopu upoznavanja s mogućnostima):
# 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 'ВашПароль';"
Recimo postgresqlu da sluša sve adrese, a ne samo localhost
# nano /var/lib/pgpro/std-11/data/postgresql.conf
Uklonite komentare i promijenite adrese za slušanje:
...
#listen_addresses = 'localhost'
...
Na
...
slušaj_adrese = '*'
...
Zatim, dopustimo korisnicima s naše mreže da se prijave
# nano /var/lib/pgpro/std-11/data/pg_hba.conf
Promijenimo:
# IPv4 lokalne veze:
domaćin sve sve 127.0.0.1/32 md5
na
domaćin sve sve 192.168.188.0/24 md5
domaćin sve sve 127.0.0.1/32 md5
Možete pročitati više o raznim Postgres instalacijama za 1s
Dalje smo stavili 1s poslužitelj.
Prenesite arhivu preuzetu s 1c stranice na poslužitelj (u mom slučaju deb64_8_3_15_1534.tar.gz)
# tar -xzf deb64_8_3_15_1534.tar.gz
# dpkg -i *.deb
jos par sitnica:
# apt install imagemagick unixodbc libgsf-bin
Sada instalirajmo Apache2
# apt install apache2
Preko administratorske konzole ili preko 1c klijenta kreiramo bazu podataka i popunjavamo našu konfiguraciju...
Sada objavljujemo bazu podataka:
idite u mapu s 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
Popnemo se u var/www/test/ i vidimo što se tamo pojavilo.
# 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"
baza="/Test"
ib="Srvr=192.168.188.150;Ref=Test;">
<standardOdata enable=«false»
reuseSessions="automatsko korištenje"
sessionMaxAge="20"
veličina bazena="10"
poolTimeout="5"/>
«
Ovo su sheme koje su potrebne za pokretanje 1c web klijenta ... sada možete pristupiti našoj test bazi podataka iz preglednika na adresi “http://ServerAddress/Test” (mala i mala slova su važna! Ovo je Linux) ili navedite “base location type” adresu u klijentu http://ServerAddress/Test" i klijent će raditi s objavljenom bazom podataka.
ALI
Ali što je s web uslugama? (u mojoj testnoj konfiguraciji postoje dva: WebBuh za razmjenu podataka s računovodstvom i toplog integracija s wms sustavom istoimene tvrtke).
Pa, hajde da dodamo par redaka našoj vrd datoteci...
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"
baza="/TestWeb"
ib="Srvr=IP_adresa;Ref=TestWebServ">
<standardOdata enable=«false»
reuseSessions="automatsko korištenje"
sessionMaxAge="20"
veličina bazena="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"/>
uštedjeti.
I sada je naša web usluga dostupna na "http://ServerAddress/Test/Web_buh.1cws?"
Zašto ste to morali učiniti ručno?
Budući da je naš poslužitelj bez grafičke ljuske, neće uspjeti pokrenuti konfigurator na njemu i, sukladno tome, objaviti ga uobičajenim sredstvima. Udaljeni konfigurator instaliran na klijentu ne objavljuje web usluge na poslužitelju. Stoga moramo ručno urediti konfiguraciju prema gore opisanom predlošku.
Izvor: www.habr.com