Имя: Пароль:
1C
1С v8
Имя сервера вместо ''localhost" при обращении к http-сервису 1С из другого компьютера в 1С
, , ,
0 azamatagent1985
 
24.01.22
10:16
Добрый день,

есть достаточно подробные описания работы с http-сервисами в 1С, но, ситуация следующая: используется веб-сервер Apache 2.2, клиент-серверная база 1С опубликована, есть http-сервис, при обращении к нему по адресу: "http://localhost/Base_Aisulu/hs/aisulu_service/mobile/12345" из компьютера, на котором опубликована база все работает, http-сервис отлаживается.

Как быть при подключении к http-сервису "из вне", то есть из другого компьютера по сети Интернет?

вместо "localhost" использую внешний ip-адрес сервера, но запрос не отрабатывается. Postman присылает такой ответ: "Error: connect ETIMEDOUT внешний ip". Какие настройки сервера опубликованной базы 1С необходимо выполнить для доступа к сервису из других компьютеров в сети Интернет?
1 Мимохожий Однако
 
24.01.22
10:17
Это настраивается вне базы 1с
2 Anchorite
 
24.01.22
10:25
Топологию сети скиньте, чтобы понимать откуда запрос идёт и где он может обрываться.
3 mistеr
 
24.01.22
11:11
(0) Нужно настроить Апач, чтобы принимал запросы на внешнем сетевом интерфейсе.

Как-то так https://httpd.apache.org/docs/2.4/bind.html
4 Василий Алибабаевич
 
24.01.22
11:13
(3) Стесняюсь спросить - вы точно понимаете то о чем советуете?
5 mistеr
 
24.01.22
11:20
(4) Пытаюсь угадать. Если таймаут, значит порт никто не слушает.
6 Йохохо
 
24.01.22
11:26
(5) "то есть из другого компьютера по сети Интернет"
7 Василий Алибабаевич
 
24.01.22
11:28
(5) Гадать не нужно. Нужно определить кто есть "пограничное устройство" и как оно обходится с запросами, приходящими из внешнего мира. Перенаправляет ли кому-нибудь внутри сети, отправляет назад или вообще рубит на корню.
8 Василий Алибабаевич
 
24.01.22
11:30
+ (7) Оно конечно может и имеет смысл (то, что написано в (3)) но только если нужно слушать не 80-й порт, а какой-нибудь другой. При этом оно абсолютно не относится к вопросу в (0).
9 mistеr
 
24.01.22
11:36
(7) В (0) не указано, в каком окружении работает сервер 1С. Я по умолчанию предположил, что это не домашний комп, и сетевая часть настроена как надо. Возможно я был слишком наивен.
10 Kassern
 
24.01.22
11:38
(0) Если в одной сети, то вместо локалхоста прописать внутренний ip. Если же надо наружу выставить сервис, то белым ip выставить через роутер наружу с нужным портом. Далее уже обращаться к сервису по нему с указанием порта.
11 Василий Алибабаевич
 
24.01.22
11:41
(9) Ошибка "Error: connect ETIMEDOUT внешний ip" как раз и говорит о том, что все настроено как надо. Злодей из вне даже не сможет определить есть ли что нибудь по адресу атаки. То есть он сделает вывод что по атакуемому адресу ничего нет и атака не имеет смысла.