Hôm nay tôi muốn hướng dẫn bạn cách nâng cấp máy chủ 1c trên linux debian 9 bằng việc xuất bản các dịch vụ web.
Dịch vụ web 1c là gì?
Ưu điểm - hoạt động nhanh chóng (ngay cả với lượng dữ liệu khá lớn), tương đối thuận tiện.
Nhược điểm - lập trình viên 1c của bạn sẽ càu nhàu với bạn trong một thời gian dài khi viết dịch vụ web cho cơ sở dữ liệu của bạn. Điều này rất đặc biệt trong văn bản.
Tôi sẽ không nói cho bạn biết cách viết
Vậy là chúng ta đã có debian 9 netinst, hãy bắt đầu nào:
Cài đặt PostgresPro (Xin lưu ý rằng nó không miễn phí và chỉ được phân phối như một phần để làm quen với các khả năng):
# 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 'ВашПароль';"
Hãy yêu cầu postgresql lắng nghe tất cả các địa chỉ chứ không chỉ localhost
# nano /var/lib/pgpro/std-11/data/postgresql.conf
Bỏ ghi chú và thay đổi địa chỉ để nghe:
...
#listen_addresses = 'localhost'
...
Trên
...
listen_addresses = '*'
...
Tiếp theo, hãy cho phép người dùng từ mạng của chúng tôi đăng nhập
# nano /var/lib/pgpro/std-11/data/pg_hba.conf
Hãy thay đổi:
# Kết nối cục bộ IPv4:
lưu trữ tất cả 127.0.0.1/32 md5
trên
lưu trữ tất cả 192.168.188.0/24 md5
lưu trữ tất cả 127.0.0.1/32 md5
Bạn có thể đọc thêm về các cài đặt Postgres khác nhau trong 1 giây
Hơn nữa chúng tôi đặt 1s máy chủ.
Tải kho lưu trữ được tải xuống từ trang 1c lên máy chủ (trong trường hợp của tôi là deb64_8_3_15_1534.tar.gz)
# tar -xzf deb64_8_3_15_1534.tar.gz
# dpkg -i *.deb
một vài điều nhỏ nữa:
# apt install imagemagick unixodbc libgsf-bin
Bây giờ hãy cài đặt Apache2
# apt install apache2
Thông qua bảng điều khiển quản trị hoặc thông qua ứng dụng khách 1c, chúng tôi tạo cơ sở dữ liệu và điền cấu hình của mình ...
Bây giờ chúng tôi xuất bản cơ sở dữ liệu:
đi đến thư mục với 1 giây.
# 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
Chúng ta vào var/www/test/ và xem những gì xuất hiện ở đó.
# 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"
cơ sở="/Kiểm tra"
ib="Srvr=192.168.188.150;Ref=Test;">
<standardOdata enable=«false»
tái sử dụngSessions="tự động sử dụng"
phiênMaxAge="20"
kích thước hồ bơi="10"
poolTimeout="5"/>
«
Đây là các sơ đồ cần thiết để khởi chạy ứng dụng khách web 1c ... bây giờ bạn có thể truy cập cơ sở dữ liệu thử nghiệm của chúng tôi từ trình duyệt tại địa chỉ “http://ServerAddress/Test” (trường hợp này rất quan trọng! Đây là Linux) hoặc chỉ định địa chỉ địa chỉ “loại vị trí cơ sở” trong máy khách http://ServerAddress/Test" và máy khách sẽ làm việc với cơ sở dữ liệu đã xuất bản.
NHƯNG
Nhưng còn dịch vụ web thì sao? (trong cấu hình thử nghiệm của tôi có hai trong số đó: WebBuh để trao đổi dữ liệu với kế toán và tích hợp toplog với hệ thống wms của công ty cùng tên).
Chà, hãy thêm một vài dòng vào tệp vrd của chúng ta...
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»
tái sử dụngSessions="tự động sử dụng"
phiênMaxAge="20"
kích thước hồ bơi="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"/>
cứu.
Và bây giờ dịch vụ web của chúng tôi có sẵn tại "http://ServerAddress/Test/Web_buh.1cws?"
Tại sao bạn phải làm điều đó bằng tay?
Vì máy chủ của chúng tôi không có vỏ đồ họa nên việc chạy bộ cấu hình trên đó sẽ không hoạt động và do đó, xuất bản nó bằng các phương tiện thông thường. Bộ cấu hình từ xa được cài đặt trên máy khách không xuất bản các dịch vụ web trên máy chủ. Vì vậy, chúng ta phải chỉnh sửa config thủ công theo mẫu mô tả ở trên.
Nguồn: www.habr.com