1с на сервере возникла внутренняя ошибка при обработке запроса код ошибки 500

Мы описывали как настраивать веб-публикацию на IIS в инструкции.

Но после настройки веб-публикации при подключении к базе может возникать ошибка “Ошибка HTTP 500.0 — Internal Server Error”.

Если модуль был установлен с 32-битного клиента, то требуется это указать в пуле приложений. Для этого мы делаем следующую настройку:

  • Заходим в Панель управления → Администрирование → Диспетчер служб IIS.
  • Выбираем Пулы приложения которые задействованы в веб-публикации, в нашем случае DefaultAppPool.
  • Нажимаем ПКМ Дополнительные параметры.
  • В строке Разрешены 32-разрядные приложения мы указываем True как на Рисунке 1.
  • Нажимаем ОК.

главная страница

Рисунок 1 — Дополнительные параметры пула приложений

Если не сработало, есть следующие возможные решения:

  1. Убедитесь, что разрешения NTFS для файла web.config верны и обеспечивают доступ к учетной записи компьютера веб-сервера. Заходим в директорию, где размещена публикация (по умолчанию — C:inetpubwwwrootИМЯ_БАЗЫ). Нажимаем ПКМ на web.config → Свойства → Безопасность. Убедитесь в том, что у группы IIS_USERS есть права на чтение, выполнение, запись и изменение файла. Если нет — нажмите кнопку Изменить, в появившемся окне Добавить → Дополнительно и найдите в списке IIS_USERS. Добавьте эту группу и назначьте соответствующие права.
  2. Проверьте журналы событий, чтобы посмотреть, была ли зафиксирована какая-либо дополнительная информация. Открываем Выполнить (ПКМ на кнопку меню пуск или сочетанием клавиш Win+R), вводим “eventvwr.msc”, нажимаем Enter. Возможно, журнал даст подсказку какой компонент может сбоить.
  3. Переустановите компонент IIS на сервере. В диспетчере серверов удалите роль Веб-сервера IIS, перезагрузите сервер, а затем установите заново через оснастку Добавить роли и компоненты.
  4. Установите компонент расширения .NET, если запрос сопоставлен управляемому обработчику.

В Windows Server 2012 и младше: заходим в Диспетчер серверов → Добавить роли и компоненты → Роли сервера → Веб-сервер (IIS) → Веб-сервер → Разработка приложений → Расширяемость .NET. Далее идём далее по указаниям системы.

После применения настроек, мы можем подключаться к настроенной веб-публикации без ошибок.

Нужна готовая настройка веб-доступа к 1С? Попробуйте наш сервер 1С в аренду, в услугу включены все настройки и обслуживание.

Ошибка работы с Интернет: внутренняя ошибка сервера (500)

Дата обновления: 28.06.2022

Ошибка возникает как при попытке отправить приглашение контрагенту, так и при попытке принять его от контрагента. 

Полный текст ошибки:

 Выполнение операции: Получение ЭД.

{ОбщийМодуль.ОбменСКонтрагентамиВнутренний.Модуль(3262)}: Ошибка при вызове метода контекста (Получить)


   Соединение.Получить(АдресРесурса, ИмяФайлаРезультата, Заголовки);


по причине:


Ошибка при выполнении файловой операции  ‘AcceptContact?id=2AED83AF80B-87F3-4A2C-950D-E7CCE2B6CE34’


по причине:


Ошибка работы с Интернет:  внутренняя ошибка сервера (500). {


«Details»: «Неизвестная ошибка»,


«AdditionalData»: «Неизвестная ошибка»,


«ApiErrorCode»: 0,


«CommonDescription»: «Неизвестная ошибка сервиса. Попробуйте позже или обратитесь в службу поддержки»,


«StatusCode»: 500


}


по причине:


Ошибка работы с Интернет:  внутренняя ошибка сервера (500) 

Для решения проблемы необходимо:
1. В разделе «Настройки ЭДО» пометить настройку на удаление.
2. Зайти в Профиль настроек ЭДО (для 1С 8.3 Администрирование — Обмен электронными документами — Обмен с контрагентами — Профили настроек ЭДО — открыть «Профиль» — Ещё — Начальная дата запроса данных у оператора; для 1С 8.2 Сервис — Обмен электронными документами — Профили настроек ЭДО — открыть «Профиль» — Все действия — Начальная дата запроса данных у оператора) и очистить поле для даты запроса данных по приглашениям, см. Рис 1.


Рис. 1

3. Вернуться в раздел «Настройки ЭДО» и нажать на кнопку «Обновить статусы подключения» — статус подключения настройки изменится на «Присоединен».

Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.

Добрый день, хотел поделиться с вами результатом преодоления этих ошибок при работе с http сервисами 1С. С данной ошибкой мне пришлось столкнуться при переписывании мобильного приложения с web сервисов на http. Ошибка возникала при отправке http сервису POST запроса.

Ошибка 405

При работе с некорректным HTTP сервисом из мобильного приложения возвращалась ошибка 405, которая указывает на конкретную проблему. «405 Method Not Allowed — указанный клиентом метод нельзя применить к текущему ресурсу.» Долго не мог разобраться с данной ошибкой, так как в сервисе запрос был разрешен и шаблоны были настроены корректно.

Ошибка 500

При работе с некорректным HTTP сервисом из внешних программ возвращалась ошибка 500, которая ни о чем конкретном не говорит. «500 Internal Server Error — любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса».

Ошибка 500

Ошибка 405

Вроде HTTP сервис один, а при использовании запросов к нему из разных программ возвращались разные ошибки.

Расследование ошибок 405 и 500 в HTTP сервисе 1С

Времени на выяснение причин ушло очень много. За несколько дней до этой задачи мною были проведены десятки экспериментов по сборке и настройке web сервера apache 2.4 x64 SSL для работы с 1С. Все настройки в основном были связаны с кросс доменными запросами из web приложения на javascript. Столкнувшись с ошибками 405 и 500 на другом проекте я сразу полез в дебри конфигурации apache. После полного удаления apache поставил IIS и на нем вышла такая же ошибка. Поднял на виртуальной машине чистую систему, попробовал apache и iss, но ошибка так и проявлялась. Потом я вспомнил, что одна функция мобильного приложения уже давно использует http сервис и там все прекрасно работает. Создал http сервис с базовыми настройками и все заработало.

Ошибка 405

Как только я переносил код из web сервиса в функции http сервиса, сразу появлялись ошибки. Самое интересное, что отладка не срабатывала, т.е. POST запрос в пустую функцию приходил и отрабатывал, а в функцию с кодом нет.

Ошибка 405

На многих форумах ошибку 405 описывают как ошибку доступа, либо не корректную настройку http сервиса.

Итог разбора ошибок 405 и 500 в HTTP сервисе 1С.

В итоге все оказалось довольно просто. Функция, которая вызывалась внутри функции http сервиса 1с не могла быть вызвана из данного модуля. Странно, что при сохранении конфигурации никакой ошибки на вызов отсутствующей функции не было. Возможно это глюк версии платформы и будет доработан. При использовании web сервисов, даже если код внутри функции был не корректный, отладка работала. В http сервисе сразу идет возврат с ошибками 405 или 500.

P.S. В последней версии платформы ошибка 405 перестала выходить.

Обновление 12.01.2019

В процессе работы часто приходится сталкиваться с ошибками 405 и 500 в HTTP сервисах. Но проблема в 99% случаев в коде сервиса. Возможно это не явно, код вас может уводить глубоко в другие модули, но решение надо искать именно там.

Сейчас у меня такие ошибки начинают и в рабочих проектах. Стоит только внести небольшое изменение которое вызывает исключительную ситуацию, как вы получите ошибку 500. Мобильный клиент ведет себя еще более странно и отловить реальную ошибку очень тяжело, особенно когда переделывает чужие формы под мобильный клиент.

В данный момент я начинаю с того, что отключаю вызов всех функций и процедур начиная со входа в обработчики HTTP сервиса и смотрю как проходят запросы. Если все хорошо, то я начинаю включать код небольшими кусочками и проверять работу сервиса. Данный метод не самый быстрый, но дает 100% результат.

Если у вас остались вопросы, то вы можете задать мне их в социальных сетях или оставить комментарий ниже.

Проблема

Эта ошибка возникает после того как Вы опубликуете информационную базу на IIS. Вот она:

500 Error IIS

Причина и устранение ошибки

Вообще, надо понимать, что ошибка: Ошибка HTTP 500.0 — Internal Server Error говорит нам о том, что дело в самом web-сервере, а не в 1С. Это первое.
Второе. Сама ошибка в купе с 1С скорее всего означает, что Internet Information Services (оно же IIS) в 64-разрядной среде запрещен запуск 32-разрядных приложений. Чтобы успешно выполнить публикацию баз 1С на сервере IIS, необходимо в настройках диспетчера служб IIS разрешить запуск таких приложений.

Для этого выполните Win+R > inetmgr.exe. Далее, разверните «Локальный компьютер», в нем «Пулы приложений», щелкните правой кнопкой мыши по DefaultAppPool «Дополнительные параметры».

Разрешены 32-разрядные приложения

Изменив эту настройку и нажав «ОК» 1С начнет нормально работать.

Изображение автора статьи

Основатель и директор по развитию Софтонит. Практикующий руководитель разработки. Эксперт в области автоматизации техподдержки

   Kamelot

15.01.16 — 10:24

Доброе утро.

В конфигурации есть три веб сервиса, два старых и один добавлен новый.

Оба старых возвращают описание когда к ним обращаются с параметром wsdl, третий нет — возвращает ошибку 500.

На внешний осмотр ничего отличающего третий веб сервис от первых двух нет, кроме одного параметра со снятой галочкой «возможно пустое значение». влияет ли эта галочка на получение описания веб сервиса.

   Остап Сулейманович

1 — 15.01.16 — 10:29

(0) Ошибка 500 — внутренняя ошибка сервера. Скорее всего до определения сервиса даже не добирается. Проверять права.

   Kamelot

2 — 15.01.16 — 10:30

попробовал через soapUI импортировать сервис вот что он мне сказал:

org.apache.xmlbeans.XmlException: java.io.CharConversionException: Malformed UTF-8 character: 0xed 0x3a 0x2

   aka AMIGO

3 — 15.01.16 — 10:32

(0) (2) Нажал буковку «Я» справа от топика.. Много ответов по вопросу :)

   Остап Сулейманович

4 — 15.01.16 — 10:36

(2) Права уже проверил? Или так и будешь рассматривать ошибку разными приблудами?

   Kamelot

5 — 15.01.16 — 10:46

(4) Права полные.

   Остап Сулейманович

6 — 15.01.16 — 11:04

(5) п л я. У кого? И на какие ресурсы?

   Остап Сулейманович

7 — 15.01.16 — 11:11

(6)

Для Apache —

«Необходимо дать права пользователю, от лица которого запускается Apache, на каталог bin файлов конкретной версии системы «1C:Предприятие» (чтение и выполнение) и каталог информационной базы (чтение и запись, в случае файлового варианта).»

Для IIS

«? дать права на чтение для пользователя, от лица которого выполняются запросы (IUSR_<PC_NAME> для IIS версий 5.1 или 6.0 или группу IIS_IUSRS для IIS версий 7.0 или 7.5), на каталог bin файлов конкретной версии системы «1C:Предприятие»;

? дать права на модификацию пользователю, от лица которого выполняются запросы (IUSR_<PC_NAME> для IIS версий 5.1 или 6.0 или группу IIS_IUSRS для IIS версий 7.0 или 7.5), на каталог информационной базы (только в случае файлового варианта).»

Подробно здесь : http://its.1c.ru/db/v837doc#bookmark:adm:TI000000222

   Fragster

8 — 15.01.16 — 11:13

500 ошибка бывает, например когда модуль вебсервиса не компилируется. И, ЕМНИП, есть баг, когда синтакс контроль в модулях вебсервиса таки не работает.

   Остап Сулейманович

9 — 15.01.16 — 11:23

(8) ТС пока еще не может получить описание веб-сервиса. А не то что вызвать метод или получить свойство. В смысле до компиляции он еще не добрался.

   Kamelot

10 — 15.01.16 — 11:26

(6) пользователя 1С, логин и пароль котоорого ввожу в браузере.

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

(8) Спасибо, сейчас закоменчу все модуле-проверю

   Остап Сулейманович

11 — 15.01.16 — 11:30

(10) Веб-сервер (не путать с сервисом) не знает никаких пользователей 1С. Он работает от имени конкретных пользователей ОС. Апач — от имени того, кто его запустил. ИИС — от имени IIS_IUSRS-ов. И вот им и нужны права на каталог платформы. И каталог базы, если она файловая. см.(7).

   Остап Сулейманович

12 — 15.01.16 — 11:31

+ (11) Рабочие и не работающий Сервисы опубликованы из одной базы 1С?

   Kamelot

13 — 15.01.16 — 11:38

(10) два сервиса из трех работают, разве может быть что из за отсутвия прав у IIS_IUSRS-ов не работет только один веб сервер в той же конфигурации что и первые два?

(11) да из одной конфигурации.

   Остап Сулейманович

14 — 15.01.16 — 11:42

(13) Вопрос не про аналогичные конфигурации (или идентичные).

Если восьмерка файловая — из одной ли базы все три опубликованы. Или все же из разных?

   Kamelot

15 — 15.01.16 — 11:52

(14) см (13), база серверная.

   Остап Сулейманович

16 — 15.01.16 — 11:58

(15) Сравнивай тогда *.vrd от твоих сервисов.

   Остап Сулейманович

17 — 15.01.16 — 12:00

+ (16) И конкретно строку

base=

   Serginio1

18 — 15.01.16 — 12:07

Еще посмотри в web.config

scriptProcessor

   Kamelot

19 — 15.01.16 — 12:18

(8)с закоменченным модулем wsdl получил, сейчас буду курить что ему там не нравиться

   Fragster

20 — 15.01.16 — 12:24

всем :-Р

   Serginio1

21 — 15.01.16 — 12:35

(19) Лучше вынеси всю реализацию в обычный модуль. Так тебе проще тестировать. А в модуле вэб сервиса уже вызывай и можешь использовать попытку исключение с записью в ЖР итд

  

Kamelot

22 — 15.01.16 — 12:51

в меню сервис->параметры->проверка модулей проставил все галочки, выдает синтаксическую ошибку на определение переменных в теле модуля : Перем блаблабла.

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

  • 1с линк ошибка 405
  • 1с линк ошибка 404
  • 1с куда отправлять ошибки
  • 1с критическая ошибка работы java процесса
  • 1с критическая ошибка при обновлении базы данных