Имя: Пароль:
1C
1С v8
Обращение к веб сервису вылетает с ошибкой Сеанс отсутствует или удален
,
0 jo77
 
05.03.19
19:21
Коллеги, добрый день.

сервер windows 2012 x64
версия 1с x86 13.1690, клиент-серверная архитектура, sql 2012 x64
апач версии 2.4

на конфигурации создан веб-сервис (не важно какой и не важно на какой конфигурации. проверялось на разных версиях и на разных платформах).
когда на конфигурации отсутствуют пользователи все работает прекрасно, при добавлении первого пользователя при обращении к схеме сервиса вылетает ошибка:

1C:Enterprise 8 application error:
Невосстановимая ошибка
by reason:
Сеанс отсутствует или удален ID=6d0dadfa-8a16-4f2a-944c-8b2d22de1366, File=src\ClusterDistribImpl.cpp(1436)

логи апача:

error:
[Tue Mar 05 20:52:54.873591 2019] [mpm_winnt:notice] [pid 3500:tid 620] AH00455: Apache/2.4.2 (Win64) configured -- resuming normal operations
[Tue Mar 05 20:52:54.873591 2019] [mpm_winnt:notice] [pid 3500:tid 620] AH00456: Server built: May 11 2012 20:42:30
[Tue Mar 05 20:52:54.873591 2019] [core:notice] [pid 3500:tid 620] AH00094: Command line: 'C:\\Program Files\\Apache Software Foundation\\Apache2.4\\bin\\httpd.exe -d C:/Program Files/Apache Software Foundation/Apache2.4 -f C:\\Program Files\\Apache Software Foundation\\Apache2.4\\conf\\httpd.conf -d C:\\Program Files\\Apache Software Foundation\\Apache2.4\\.'
[Tue Mar 05 20:52:54.873591 2019] [mpm_winnt:notice] [pid 3500:tid 620] AH00418: Parent: Created child process 6652
[Tue Mar 05 20:52:55.232989 2019] [mpm_winnt:notice] [pid 6652:tid 496] AH00354: Child: Starting 64 worker threads.
[Tue Mar 05 20:57:55.133547 2019] [mpm_winnt:notice] [pid 3500:tid 620] AH00422: Parent: Received shutdown signal -- Shutting down the server.
[Tue Mar 05 20:57:57.148150 2019] [mpm_winnt:notice] [pid 6652:tid 496] AH00364: Child: All worker threads have exited.
[Tue Mar 05 20:57:57.288783 2019] [mpm_winnt:notice] [pid 3500:tid 620] AH00430: Parent: Child process exited successfully.

access:
192.168.10.81 - - [05/Mar/2019:20:50:45 +0500] "GET /ext/ws/Exchange.1cws?wsdl HTTP/1.1" 500 382
192.168.10.81 - - [05/Mar/2019:20:53:31 +0500] "GET /ext/ws/Exchange.1cws?wsdl HTTP/1.1" 500 382
192.168.10.81 - - [05/Mar/2019:20:57:41 +0500] "GET /ext/ws/Exchange.1cws?wsdl HTTP/1.1" 500 382

причем тонкий и веб-клиенты работают прекрасно, пользователю который авторизуется на веб-сервисе стоят самые полные права.
пробовал уже менять права запуска служб от разных пользователей системы (давал полномочия апачу и 1Су от администратора системы), отслеживается косяк на различных версиях платформы.

подключение к веб-сервисам на другом аналогичном сервере при добавлении пользователей проходит нормально.
базу пробовал удалять, ставить заново - без результата.

т.е. испробовались уже все различные способы кроме того как снести и поставить заново сервер 1Са.
подскажите, может кто знает как лечить.
1 Сияющий в темноте
 
05.03.19
21:02
переопубликовать пробовали?
2 jo77
 
06.03.19
00:02
пробовал. не помогает. причем на разных базах ситуация одинаковая.
3 palsergeich
 
06.03.19
00:25
С настройками кластера не играл?
Было что то похожее, но с фоновыми заданиями, после хм, тюнинга.
4 palsergeich
 
06.03.19
00:26
Постоянно рушились фоновые задания, уже не помню что конкретно изменили, толи число сеансов на процесс, толи еще что, выкрутили в минимум и фоновые стали валится постоянно с похожим текстом.
Проверь кластер
5 jo77
 
06.03.19
00:44
вынос сервера 1С с полным выносом корня кластера результата не дал.
не знаю что надо было бедолаге. промучался долго но есть результат. но......

запускаю строку подключения к схеме в браузере с сервака (с единственным пользователем):
http://localhost/трампампам/ws/.....1cws?wsdl
работает!

запускаю с другого компа:
1C:Enterprise 8 application error:
Невосстановимая ошибка
by reason:
Сеанс отсутствует или удален
что за ерунда О_о
теперь уже со всех компов ошибка стабильная

сношу снова единственного пользователя в базе данных:
схема появляется (на всех компах без ошибок)

похоже это что-то на уровне пользователя котороый стучится на апач но получает отлуп по непонятной причине. может дело не в 1Се а в настройках апача? апач ставлен из коробки с apache.org
6 Смотрящий
 
06.03.19
05:22
(0) т.е. испробовались уже все различные способы кроме того как снести и поставить заново сервер 1Са. - не поможет.
Подобное наблюдается на 8.3.13 любой версии. 8.3.10 и ниже - показывает схему корректно. 8.3.11-12 - не проверял.
Плюнул и забил.
7 jo77
 
06.03.19
07:47
(6) а самое интересное то что рядом стоит сервер на точно такой же ОС и точно такой же платформе и при этом все работает.
8 jo77
 
06.03.19
13:42
на сервере в качестве эксперимента установлен IIS 8.5
симптомы сохраняются: при добавлении пользователя веб-сервис перестает работать.
9 Сияющий в темноте
 
06.03.19
13:49
А у пользователя права на web-сервис есть?
10 jo77
 
06.03.19
14:17
(9) когда ни одного пользователя про роли говорить смысла нету (там роль с полными правами и доступ есть), роли проставлены (напомню - полная копия базы данных на соседнем сервере работает).
эта бяка кстати отслеживается как на основной конфигурации и на расширениях.
я так предполагаю что до авторизации на 1Се здесь дело просто не доходит либо по какой-то пока не понятной причине система из-за различия пользователей (отсутствия нужного пользователя в базе, либо несовпадения паролей и т.д.) просто делает отлуп.
походу дело или в 1Се, в самой ОС или ее настройках.
11 neckto
 
06.03.19
14:38
(0) попробуй в свойствах веб-сервиса отключить повторное использование сеансов и переопубликовать.
12 jo77
 
06.03.19
15:23
(11) не помогает. так себя ведут абсолютно все вебсервисы и с повторно исп. сеансами и без.
пробовал менять время жизни от 0 до 100. тоже не помогло
13 jo77
 
06.03.19
15:55
коллеги, внесу небольшие коррективы.
оказывается не все конфигурации так себя ведут! О_о

сейчас создал пустую конфиугурацию, создал один вебсервис и один метод в нем, добавил роль, создал пользователя и (ЭТО ЧУДО!) при обращении к схеме браузер запросил авторизацию.

т.е. не все конфигурации одинаково полезны.
14 Sysanin_1ц
 
06.03.19
16:00
(0) В такой ситуации надо пробовать другой релиз платформы
15 jo77
 
06.03.19
16:17
(14) пробовали на разных релизах.

(13) дальнейший разбор полетов привел к тому что дело в клиент-серверной архитектуре. заливка базы в файловую версию работает нормально, та же примитивная база с одним веб-сервисом и одним методом начинает хулиганить.
сервер и апач запущены под админовскими полномочиями, доступ к библиотеке и файлы побликаций доступны.
все, теперь у меня ступор.
16 Apokalipsec
 
06.03.19
16:21
Дело скорее всего в настройках кластера 1С, а именно когда есть попытка подключения к базе, в которой есть пользователи, 1Сина пытается перебросить сеанс веб-сервиса в отдельный рабочий процесс и не получается его создать - падение. Поэтому работает при подключении без пользователей.
Включите тж и настройте события кластера - всё увидите без шаманства.
17 jo77
 
06.03.19
16:26
(16) да, тоже думаю над этим. как будет результат отпишусь.
18 jo77
 
06.03.19
16:28
(16) а как тогда объясните что сам тонкий и веб-клиенты работают нормально при добавленном пользователе? ведь так себя ведут только веб-сервисы.
19 ttk
 
06.03.19
17:15
сервак наверное ломаный?
в файле публикации веб-сервиса руками пропиши пользователя
ib="Srvr="server:порт";Ref="база";Usr="Пользователь&quo
20 Nyoko
 
06.03.19
17:21
журнал смотри, и во все исключения поставь записать ошибку.
там падает процесс в апаче. узнай конкретно из-за чего.
21 ttk
 
06.03.19
17:34
(20) в журнале у него, скорее всего, ошибка авторизации
22 jo77
 
06.03.19
17:44
(20) ничего кроме этого не пишет:

37:39.528002-0,EXCP,4,process=rphost,p:processName=extfo,OSThread=5072,t:clientID=10,t:applicationName=WebServerExtension,t:computerName=SERV1C,t:connectID=4,Exception=SeanceContextException,Descr='Сеанс отсутствует или удален
ID=346036bb-b1cf-4112-9039-0b2a008981d4, File=src\ClusterDistribImpl.cpp(1436)'

если в vrd прописать юзера действительно работает.
23 jo77
 
06.03.19
17:49
коллеги, благодарю всех кто принимал участие
24 alexinnnn
 
11.03.19
14:06
Аналогичная проблема, если в vrd прописать юзера - все работает, но если он не нужен что делать?? Обнаружил, что если указать неправильные имя пользователя и пароль - работает как надо))