Биз Linux'та маалымат базасын жана веб-кызматтарды жарыялоо менен 1c серверин көтөрүп жатабыз

Биз Linux'та маалымат базасын жана веб-кызматтарды жарыялоо менен 1c серверин көтөрүп жатабыз

Бүгүн мен Linux Debian 1да веб-кызматтарды жарыялоо менен 9c серверин кантип орнотууну айткым келет.

1С желе кызматтары деген эмне?

Веб кызматтары башка маалымат системалары менен интеграциялоо үчүн колдонулган платформа механизмдердин бири болуп саналат. Бул тиркемелерди жана маалымат системаларын интеграциялоонун заманбап стандарты болгон сервиске багытталган архитектура SOA (Кызматка багытталган архитектура) колдоо каражаты. Негизи, бул маалыматтар менен html баракчасын түзүү мүмкүнчүлүгү, андан кийин каалаган башка тиркеме аркылуу кирүүгө жана кайра алууга болот.

Артыкчылыктары - ал тез иштейт (жада калса бир кыйла чоң көлөмдөгү маалыматтар менен) жана салыштырмалуу ыңгайлуу.

Жаман жактары - сиздин 1С программистиңиз сиздин маалымат базаңыз үчүн веб-кызматты жазып жатканда көп жана узак убакыт бою сизге нааразы болот. нерсе жазууда абдан өзгөчө болуп саналат.

Мен сага кантип жазууну айтпайм желе кызматы... Мен аны Linux'та сервердин консолунан кантип жарыялоону, ошондой эле Linux'та 1С серверин орнотуу жөнүндө бир аз айтып берем.

Ошентип, бизде debian 9 netinst бар, баштайлы:

PostgresPro орнотуңуз (эстеңиз, ал бекер эмес жана мүмкүнчүлүктөр менен таанышуунун бир бөлүгү катары таратылат):

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

Келгиле, postgresqlге бир гана localhost эмес, бардык даректерди угууну айталы

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

Келгиле, комментарийден баш тартып, кайсы даректерди угуш керек экенин өзгөртөлү:

...
#угуу_даректери = 'localhost'
...

боюнча

...
угуу_даректери = '*'
...

Андан кийин, келгиле, биздин тармактын колдонуучуларына кирүүгө уруксат берели

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

Өзгөртөлү:

# IPv4 жергиликтүү байланыштары:
бардык 127.0.0.1/32 md5 хостинг

боюнча

бардык 192.168.188.0/24 md5 хостинг
бардык 127.0.0.1/32 md5 хостинг

1c үчүн ар кандай Postgres орнотуулары жөнүндө көбүрөөк окуй аласыз бул жерде.

Андан кийин биз 1c серверин орнотобуз.

1c веб-сайтынан жүктөлүп алынган архивди серверге жүктөө (менин учурда deb64_8_3_15_1534.tar.gz)


# tar -xzf deb64_8_3_15_1534.tar.gz

# dpkg -i *.deb

дагы бир нече кичинекей нерселер:

# apt install imagemagick unixodbc libgsf-bin

Эми Apache2ди орнотобуз

# apt install apache2

Администрация консолу же 1c кардары аркылуу биз маалымат базасын түзүп, конфигурациябызды жүктөйбүз...

Эми биз маалымат базасын жарыялайбыз:

1с менен папкага өтүңүз.

# 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

Келгиле, var/www/test/ дарегине барып, анда эмнелер пайда болгонун карап көрөлү.

# 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”
база ="/Тест"
ib="Srvr=192.168.188.150;Ref=Test;">
<standardOdata enable=«false»
reuseSessions="autouse"
sessionMaxAge="20"
poolSize = "10"
poolTimeout="5"/>

«

Бул 1c веб кардарын ишке киргизүү үчүн зарыл болгон схемалар... эми сиз биздин тесттик маалымат базасына браузерден “http://ServerAddress/Test” дареги боюнча кирсеңиз болот (иш маанилүү! бул Linux) же көрсөтүңүз кардарда "маалымат базасынын жайгашкан түрү" дареги " http://ServerAddress/Test" жана кардар жарыяланган маалымат базасы менен иштейт.

БИРОК

Веб кызматтары жөнүндө эмне айтууга болот? (менин тесттик конфигурациямда алардын экөөсү бар: бухгалтердик эсеп менен маалымат алмашуу үчүн WebBuh жана ошол эле аталыштагы компаниянын wms системасы менен топлог интеграциясы).

Келиңиз, 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=”/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"/>

сактайлы.

Эми биздин веб-кызматы “http://ServerAddress/Test/Web_buh.1cws?” дарегинде жеткиликтүү.

Эмне үчүн кол менен жасоого туура келди?

Биздин серверде графикалык кабык жок болгондуктан, андагы конфигураторду иштетүү мүмкүн болбой калат жана ошого жараша стандарттык каражаттарды колдонуу менен жарыялоо. Кардарда жайгашкан алыскы конфигуратор серверде веб-кызматтарды жарыялабайт. Ошондуктан, биз конфигурацияны жогоруда сүрөттөлгөн шаблонго ылайык кол менен түзөтүшүбүз керек.

.vrd түзүү үчүн скрипт - Рахмат ТихонВ

Source: www.habr.com

Комментарий кошуу