Рассмотрим ситуацию когда есть виртуальный сервер на Centos 7.
Задача: Опубликовать базу 1С в браузере, внутри локальной сети, также опубликовать WEB сервис с названием например Retail и дать доступ по логин / паролю.
Часть 1
1С, Apache2, Hasp должны быть установлены(если не получается поставить что то из этого, пишите расскажу как это сделать)
Подключаемся к серверу по SSH, и далее по шагам:
1. Переходим в папку:
cd /opt/1c/v8.3/x86_64/
2. Публикуем базу
./webinst -publish -apache22 -wsdir ws -dir /var/www/html/ws -connstr "Srvr=server;Ref=base;" -confPath /etc/httpd/conf/httpd.conf
где
- ws - папка где будет лежать конфиг опубликованной базы
- /var/www/html/ws03 - путь к папке
- Srvr=server - имя вашего сервера
- Ref=base - имя вашей базы
- /etc/httpd/conf/httpd.conf - путь до конфигурационного файла Apache
3. Даем права папке
chown apache:apache /var/www/html/ws03/default.vrd
4. Теперь перезагружаем Apache
systemctl restart httpd
Переходим в браузер и набираем так: http://ip-сервера/имя_вашей_базы/ru_Ru
Готово! Ваша база опубликована! Остается там авторизоваться.
Часть 2
1. Идем в
cd /var/www/html/ws/
2. Редактируем default.vrd
mcedit default.vrd
И приводим к такому виду:
и приводим к такому виду:
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
base="/base"
ib="Srvr="server";Ref="base";"> - Server # адрес вашего сервера , base имя вашей базы
<ws>
<point name="Retail" # тут название вебсервиса
alias="Retail.1cws" # тут его алиас
enable="true"/>
</ws>
</point>
Нажимаем F2 и сохраняем.
3. Открываем браузер и вводим http://ip-сервера/имя_вашей_базы/ws/Retail.1cws
У вас откроется веб сервис. Отлично! Осталось последнее - задать логин и пароль для открытия веб сервиса.
Часть 3
1. Переходим в папку с веб сервисом
cd /var/www/html/ws/
2. Создаем файл
mcedit .htaccess
с таким содержимым
require valid-user
Authname "Basic Auth"
Authtype Basic
AuthUserFile "/var/www/html/pass/.htpasswd"
Сохраняем и выходим.
3. Переходим в папку
cd /var/www/html/pass/.htpasswd
4. Создаем файл
mcedit .htpasswd
С таким содержимым:
userws:$apr1$ez6p.8Qm$o8n.WfX8DmIzfF2iM4Ghc1
Где
userws - логин
$apr1$ez6p.8Qm$o8n.WfX8DmIzfF2iM4Ghc1 - Зашифрованный пароль
Пароль можно сделать через любой онлайн сервис например тут!
Вот все! Для проверки переходите по ссылке http://ip-сервера/имя_вашей_базы/ws/Retail.1cws и теперь у вас потребуют логин и пароль!