
Sot, do dëshiroja të flisja se si të ngremë një server 1C në Linux Debian 9 me publikimin e shërbimeve web.
Çfarë janë shërbimet web 1C?
janë një nga mekanizmat e platformës, të përdorura për integrimin me sisteme të tjera informacioni. Ato përbëjnë një mjet mbështetje për SOA (Arkitektura e Orientuar nga Shërbimi) — një standard modern për integrimin e aplikacioneve dhe sistemeve informacioni. Në thelb, kjo është mundësia për të krijuar një faqe HTML me të dhëna, të cilës çfarëdo aplikacioni tjetër mund t’i qaset dhe t’i marrë ato.
Përshtypjet pozitive — punon shpejt (edhe me një volum të konsiderueshëm të të dhënave), relativisht i përshtatshëm.
Përshtypjet negative — programi juaj 1C do të ankohet shumë gjatë, derisa të shkruajë shërbimin web për bazën tuaj. Një gjë shumë specike për tu shkruar.
Nuk do të flas për mënyrën se si të shkruani … do të flas si ta publikojmë atë në Linux nga konsola e serverit, si dhe pak për instalimin e serverit 1C në Linux.
Pra, kemi Debian 9 netinst, le të fillojmë:
Instalojmë PostgresPro (Dua të theksoj se ai nuk është falas dhe shpërndahet vetëm në kuadër të njohjes me mundësitë):
# 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 'ВашПароль';"Le të themi që PostgreSQL dëgjon të gjitha adresat dhe jo vetëm localhost
# nano /var/lib/pgpro/std-11/data/postgresql.confNe do të heqim komentin dhe do të ndryshojmë cilat adresa të dëgjon:
…
#listen_addresses = ‘localhost’
…
Në
…
listen_addresses = ‘*’
…
Më pas do të lejojmë përdoruesit nga rrjeti ynë të hyjnë
# nano /var/lib/pgpro/std-11/data/pg_hba.confDo të ndryshojmë:
# IPv4 local connections:
host all all 127.0.0.1/32 md5
në
host all all 192.168.188.0/24 md5
host all all 127.0.0.1/32 md5
Më shumë detaje për instalimet e ndryshme të Postgres për 1C mund të lexoni .
Më pas instalojmë serverin 1C.
Ngarkojmë në server arkivin e shkarkuar nga faqja 1C (në rastin tim deb64_8_3_15_1534.tar.gz)
# tar -xzf deb64_8_3_15_1534.tar.gz
# dpkg -i *.debdisa gjëra të vogla:
# apt install imagemagick unixodbc libgsf-binTani do të instalojmë Apache2
# apt install apache2Përmes konsolës së administratës ose përmes klientit 1C krijojmë bazën dhe ngarkojmë konfigurimin tonë…
Tani publikojmë bazën:
shkojmë në folderin me 1C.
# 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.confShikojmë në var/www/test/ dhe shohim se çfarë ka aty.
# cd /var/www/test# nano default.vrd«
<?xml version=«1.0» encoding=«UTF-8»?>
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"/>
«
Këto janë skemat e nevojshme për të nisur klientin web 1c… tani mund të aksesoni bazën tonë testuese nga shfletuesi në adresën «http ://AdresaServerit/Test» (registri është i rëndësishëm! është Linux) ose të specifikoni në klient adresën «tipi i pozicionit të bazës» «http ://AdresaServerit/Test», dhe klienti do të funksionojë me bazën e publikuar.
POR
Por, çfarë ndodh me shërbimet web? (në konfigurimin tim testues, ka dy: WebBuh për exchange të të dhënave me llogarinë dhe toplog integrim me sistemin wms të kompanisë me të njëjtin emër).
Ajo që duhet bërë është të shtojmë disa rreshta në skedarin tonë vrd…
<?xml version=«1.0» encoding=«UTF-8»?>
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_adresa;Ref=TestWebServ»>
<standardOdata enable="false"
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
# Вот тут начинается код который публикует веб-сервисы
<point name="WebBuh" # Emri i shërbimit web në konfigurator
alias="Web_buh.1cws" # Web_buh.1cws - alias i shërbimit web në shfletues
enable="true" # më tej mendoj se rreshtat janë të kuptueshme
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
<point name="TopLog" # shërbimi i dytë web
alias="toplog.1cws" # toplog.1cws
enable="true"
reuseSessions="autouse"
sessionMaxAge="20"
poolSize="10"
poolTimeout="5"/>
të ruajmë.
Dhe tani shërbimi ynë web është i aksesueshëm në adresën «http ://AdresaServerit/Test/Web_buh.1cws?»
Pse duhej ta bënim këtë me dorë?
Duke qenë se serveri ynë nuk ka një ndërfaqe grafike, nuk mund të nisim konfiguruesin atje, dhe për rrjedhojë të publikojmë me mjetet standarde. Konfiguruesi të cilin e kemi në klient, nuk publikonte shërbimet web në server. Prandaj, na duhet të rregullojmë konfigurimin manualisht sipas shabllonit të përshkruar më sipër.
— faleminderit
Burimi: habr.com
