Linux 上でデータベースと Web サービスを公開するために 1c サーバーを立ち上げます

Linux 上でデータベースと Web サービスを公開するために 1c サーバーを立ち上げます

今日は、Web サービスの公開に伴い、Linux debian 1 上で 9c サーバーを立ち上げる方法を説明したいと思います。

Web サービス 1c とは何ですか?

ウェブサービス 他の情報システムとの統合に使用されるプラットフォーム メカニズムの XNUMX つです。 これは、アプリケーションと情報システムを統合するための最新の標準である SOA (Service-Oriented Architecture)、つまりサービス指向アーキテクチャをサポートする手段です。 実際、これはデータを含む HTML ページを作成する機会であり、他のアプリケーションからアクセスして取得することができます。

長所 - 動作が速く (データ量がかなり多い場合でも)、比較的便利です。

短所 - データベースの Web サービスを作成している間、1c プログラマーは長い間不平を言います。 文章としては非常に独特です。

書き方は教えません ウェブサービス... サーバー コンソールから Linux で公開する方法と、Linux への 1c サーバーのインストールについて少し説明します。

これで、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 'ВашПароль';"

localhost だけでなくすべてのアドレスをリッスンするように postgresql に指示しましょう

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

コメントを解除して、リッスンするアドレスを変更します。

...
#listen_addresses = 'ローカルホスト'
...

На

...
listen_addresses = '*'
...

次に、ネットワークからのユーザーのログインを許可しましょう。

# 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

1 秒間のさまざまな Postgres インストールについて詳しく読むことができます。 ここで.

さらにサーバーに 1 を設定します。

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/仮想リソースシステム"
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=テスト;">
<standardOdata enable=«false»
reuseSessions="自動使用"
sessionMaxAge="20"
プールサイズ = "10"
poolTimeout="5"/>

«

これらは、1c Web クライアントを起動するために必要なスキームです。これで、ブラウザからアドレス「http://ServerAddress/Test」(大文字と小文字が重要です。これは Linux です)でテスト データベースにアクセスするか、クライアントの「ベース ロケーション タイプ」アドレス http://ServerAddress/Test" を指定すると、クライアントは公開されたデータベースを操作します。

しかし

しかし、Web サービスについてはどうでしょうか? (私のテスト構成には、会計とのデータ交換用の WebBuh と、同じ名前の会社の wms システムとの toplog 統合用の XNUMX つがあります)。

さて、vrd ファイルに数行追加しましょう...


v8.1c.ru/8.2/仮想リソースシステム"
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_address;Ref=TestWebServ">
<standardOdata enable=«false»
reuseSessions="自動使用"
sessionMaxAge="20"
プールサイズ = "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"/>

保存。

そして現在、私たちの Web サービスは「http://ServerAddress/Test/Web_buh.1cws?」で利用できるようになりました。

なぜ手作業でやらなければならなかったのでしょうか?

私たちのサーバーにはグラフィカル シェルがないため、そのサーバー上でコンフィギュレーターを実行することはできず、したがって、通常の手段を使用してコンフィギュレーターを公開することはできません。 クライアントにインストールされたリモート コンフィギュレーターは、サーバー上に Web サービスを公開しません。 したがって、上記のテンプレートに従って構成を手動で編集する必要があります。

.vrdを生成するスクリプト - ありがとう ティホンV

出所: habr.com

コメントを追加します