Gipataas namo ang 1c server uban ang pagmantala sa database ug mga serbisyo sa web sa Linux

Gipataas namo ang 1c server uban ang pagmantala sa database ug mga serbisyo sa web sa Linux

Karon gusto nako isulti kanimo kung giunsa ang pagpataas sa usa ka 1c server sa linux debian 9 nga adunay pagmantala sa mga serbisyo sa web.

Unsa ang mga serbisyo sa web 1c?

Mga serbisyo sa web mao ang usa sa mga mekanismo sa plataporma nga gigamit alang sa integrasyon sa ubang mga sistema sa impormasyon. Kini usa ka paagi sa pagsuporta sa SOA (Service-Oriented Architecture) - arkitektura nga nakabase sa serbisyo, nga mao ang modernong sumbanan alang sa paghiusa sa mga aplikasyon ug sistema sa impormasyon. Sa tinuud, kini usa ka oportunidad sa paghimo og usa ka panid sa html nga adunay datos, nga mahimo’g ma-access sa bisan unsang ubang aplikasyon ug makuha.

Pros - dali nga molihok (bisan pa sa usa ka medyo dako nga kantidad sa datos), medyo kombenyente.

Cons - ang imong 1c programmer magbagulbol kanimo sa dugay nga panahon samtang nagsulat og serbisyo sa web para sa imong database. Ang butang talagsaon kaayo sa pagsulat.

Dili ko isulti kanimo kung unsaon pagsulat serbisyo sa web... Sultihan ko ikaw kung giunsa kini i-publish sa Linux gikan sa console sa server, ingon man usa ka gamay bahin sa pag-install sa usa ka 1c server sa Linux.

Ug busa, kita adunay debian 9 netinst, magsugod kita:

I-install ang PostgresPro (Palihug timan-i nga kini dili libre, ug giapod-apod lamang isip bahin sa pamilyar sa mga posibilidad):

# 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 'Π’Π°ΡˆΠŸΠ°Ρ€ΠΎΠ»ΡŒ';"

Atong sultihan ang postgresql nga maminaw sa tanang adres ug dili lang localhost

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

Uncomment ug usba kung unsang mga adres ang paminawon:

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

sa

...
listen_addresses = '*'
...

Sunod, tugotan nato ang mga tiggamit gikan sa atong network nga maka-log in

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

Usbon nato:

# IPv4 lokal nga koneksyon:
host sa tanan nga 127.0.0.1/32 md5

sa

host sa tanan nga 192.168.188.0/24 md5
host sa tanan nga 127.0.0.1/32 md5

Mahimo nimong mabasa ang dugang bahin sa lainlaing mga pag-install sa Postgres alang sa 1s dinhi.

Dugang pa gibutang namon ang 1 sa server.

I-upload ang archive nga na-download gikan sa 1c site ngadto sa server (sa akong kaso, deb64_8_3_15_1534.tar.gz)


# tar -xzf deb64_8_3_15_1534.tar.gz

# dpkg -i *.deb

pipila pa ka gagmay nga mga butang:

# apt install imagemagick unixodbc libgsf-bin

Karon atong i-install ang Apache2

# apt install apache2

Pinaagi sa console sa administrasyon o pinaagi sa kliyente sa 1c, naghimo kami usa ka database ug gipuno ang among pagsumpo ...

Karon among gipatik ang database:

adto sa folder nga may 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

Mosaka kami sa var/www/test/ ug tan-awon kung unsa ang nagpakita didto.

# 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="/Pagsulay"
ib="Srvr=192.168.188.150;Ref=Test;">
<standardOdata enable=Β«falseΒ»
reuseSessions="autouse"
sessionMaxAge="20"
poolSize = "10"
poolTimeout="5"/>

Β«

Kini ang mga laraw nga gikinahanglan aron ilunsad ang 1c web client ... karon mahimo nimong ma-access ang among test database gikan sa browser sa adres nga "http://ServerAddress/Test" (ang kaso importante! Kini ang Linux) o ipiho ang Ang adres nga "matang sa lokasyon sa base" sa kliyente http://ServerAddress/Test" ug ang kliyente magtrabaho kauban ang gipatik nga database.

APAN

Apan komosta ang mga serbisyo sa web? (sa akong pagsumpo sa pagsulay adunay duha niini: WebBuh alang sa pagbayloay sa datos sa accounting ug toplog integration sa wms system sa kompanya nga parehas nga ngalan).

Aw, magdugang ta ug pipila ka linya sa atong vrd file...


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

pagluwas.

Ug karon ang among serbisyo sa web magamit sa "http://ServerAddress/Test/Web_buh.1cws?"

Ngano nga kinahanglan nimo nga buhaton kini pinaagi sa kamot?

Tungod kay ang among server walay graphical shell, dili kini molihok sa pagdagan sa configurator niini, ug, sumala niana, imantala kini gamit ang regular nga paagi. Ang hilit nga configurator nga gi-install sa kliyente wala mag-publish sa mga serbisyo sa web sa server. Busa, kinahanglan natong usbon ang config nga mano-mano sumala sa template nga gihulagway sa ibabaw.

Script aron makamugna og .vrd - Salamat TihonV

Source: www.habr.com

Idugang sa usa ka comment