Ошибка 406 iis 1c

Обновлено: 05.07.2024

Коды данной категории служат для указание на ошибку со стороны клиента. При использовании любых методов запроса, кроме HEAD, сервера возвращает пользователю гипертекстовое пояснение по данной ошибке.

Коды данной категории, предназначены для ситуаций, когда обработка запроса не возможна по вине сервера. Во всех случаях, кроме использования метода HEAD, сервер должен включать в тело ответа, объяснение для пользователя.

Любой веб сервер обязан работать, по крайней мере с двумя методами GET и HEAD. Если сервер не смог определить метод, указанный в заголовке запроса клиента, он должен вернуть код статуса 501 (Not Implemented), если-же метод серверу известен, но неприменим к данному ресурсу, будет возвращен код статуса 405 (Method Not Allowed). Как в первом, так и во втором случае, сервер должен включить в свой ответ, заголовок Allow со списком методов, которые он поддерживает.

Метод OPTIONS

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

Метод GET

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

Кроме вышесказанного, существуют еще два вида метода GET, это:
условный GET, содержащий заголовки If-Modified-Since, If-Match, If-Range и им подобные,
Частичный GET, содержащий заголовок Range с указанием байтового диапазона данных, которые сервер должен отдать. Данный вид запроса используется для докачки и организации многопоточных закачек.

Порядок работы с этими подвидами запроса GET, стандартами определен отдельно.

Метод HEAD

Данный метод, аналогичен методу GET, с той лишь разницей, что сервер не отправляет тело ответа. Метод HEAD, как правило используется для получения метаданных ресурса, проверки URL ( есть-ли указанный ресурс на самом деле ) и для выяснения факта изменения ресурса с момента последнего обращения к нему.

Заголовки ответа могут быть закэшированы, при несоответствии метаданных и информации в кэше, копия ресурса помечается как устаревшая.

Метод POST

В отличии от GET, метод POST, не является идемпотентным, то есть неоднократное повторение запроса POST, может выдавать разные результаты. В нашем случае, будет появляться новая копия комментария при каждом запросе.

Ответы сервера, на выполнение метода POST, не кэшируются.

Метод PUT

Используется для загрузки данных запроса на указанный URI. В случае отсутствия ресурса по указанному в заголовке URI, сервер создает его и возвращает код статуса 201 (Created), если ресурс присутствовал и был изменен в результате запроса PUT, выдается код статуса 200 (Ok) или 204 (No Content). Если какой-то из переданных серверу заголовков Content-*, не опознан или не может быть использован в данной ситуации, сервер возвращает статус ошибки 501 (Not Implemented).

Главное различие методов PUT и POST в том, что при методе POST, предполагается, что по указанному URI, будет производиться обработка, передаваемых клиентом данных, а при методе PUT, клиент подразумевает, что загружаемые данные уже соответствуют ресурсу, расположенному по данному URI.

Ответы сервера при методе PUT не кэшируются.

Метод PATCH

Работает аналогично методу PUT, но применяется только к определенному фрагменту ресурса.

Метод DELETE

Удаляет ресурс, расположенный по заданному URI.

Метод TRACE

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

Проверяем, что наш пользователь появился и жмем ОК

Настройка сайта и приложения в IIS

В левой части экрана раскрываем ветку с сайтами. Останавливаем сайт по умолчанию Default Web Site или модифицируем его, я предпочитаю делать отдельный.

Жмем ПКМ на сайты и выбираем пункт Добавить веб-сайт

Заполняем параметры сайта

Проверяем, что наш сайт появился и запустился

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

Настройка доступа для группы IIS_IUSRS

Настройка необходимого доступа для группы IIS_IUSRS, для корректной работы нашего сайта (1с) и корректной публикации.

Если группа найдена она станет подчеркнутой, жмем ОК.

Далее проставляем галочки необходимых прав:

Тоже самое с правами, мы делаем для каталога куда установлена 1с и каталога куда развернута наша файловая база. Если Вы используете базу SQL, то Вам НЕ нужно задавать права на каталог с базой.
Обращаем внимание, что для каталога с базой так же нужны права на запись!

Расположение файловой базы Вы можете посмотреть запустив 1С Предприятие

Публикация 1с

Выбираем каталог где будут файлы сайта и жмем Опубликовать

Настройка веб-публикации 1С, подключение кассового оборудования

Устанавливаем веб-сервер Internet Information Server, который по умолчанию входит в поставку Microsoft Windows Server. При установке обязательно выбираем компоненты:

2. Публикации базы в 1С

На этот же сервер, где развернут веб-сервер IIS, устанавливаем «1С:Предприятие» (32-разрядные компоненты), обязательно выбрав при установке компоненты:

Если планируется настроить 64-разрядный модуль расширения веб-сервера, то необходимо дополнительно запустить программу установки 64-разрядного сервера из соответствующей поставки «1С:Предприятие» и установить компоненту:

2.1 Настройка прав доступа для IIS

Теперь необходимо установить необходимые права на ключевые папки, используемые при работе веб-доступа к базам данных «1С:Предприятие». Для каталога хранения файлов веб-сайтов, опубликованных на веб-сервере (по-умолчанию: C:\inetpub\wwwroot\), необходимо дать полные права группе «Пользователи» (Users). В принципе, этот шаг можно пропустить, но тогда для публикации или изменения публикации базы данных надо будет запускать «1С:Предприятие» от имени администратора. Для настройки безопасности данного каталога, кликаем по нему правой кнопкой мыши и в контекстном меню выбираем «Свойства» (Properties).

В открывшемся окне свойств, переходим на вкладку «Безопасность» (Security) и нажимаем кнопку «Изменить» (Edit…), для изменения действующих разрешений. Появится окно разрешений для данного каталога. В списке Групп или пользователей (Groups or user names) выделим группу «Пользователи» (Users) и в списке разрешений для выбранной группы установим флаг «Полный доступ» (Full control). Затем нажмем «Применить» (Apply) для записи изменений и закроем все окна при помощи кнопки «ОК».

Далее необходимо дать полные права на каталог с установленными файлами «1С:Предприятие» (по-умолчанию: C:\Program Files (x86)\1cv8\ для 32-разрядного модуля расширения и C:\Program Files\1cv8\ для 64-разрядного) группе IIS_IUSRS. Для этого выполняем аналогичные описанным выше действия, с той лишь разницей, что для того, чтобы необходимая группа появилась в списке «Группы или пользователи» (Groups or user names), необходимо нажать расположенную под списком кнопку «Добавить» (Add..), а в окне выбора групп или пользователей нажать «Дополнительно» (Advanced…).

Затем нажимаем расположенную справа кнопку «Поиск» (Find Now), после чего выбираем необходимую группу IIS_IUSRS в таблице результатов поиска и нажимаем «ОК».

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

2.2 Публикация базы данных на веб-сервере

Переходим к непосредственной публикации базы данных на веб-сервере. Для этого запускаем «1С:Предприятие» в режиме Конфигуратор для той базы, которую требуется опубликовать. Затем в меню выбираем «Администрирование» — «Публикация на веб-сервере…»

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

Выбрав необходимые настройки публикации, нажимаем «Опубликовать».

2.3 Подключение к опубликованной информационной базе через веб-браузер

3. Создание бесплатного SSL-сертификата Let’s Encrypt на IIS

Наличие SSL-сертификата для сайта позволяет защитить данные пользователей, передаваемые по сети от атак человек-посередине (man-in-the-middle) и гарантировать целостность переданных данных.

Let’s Encrypt – это некоммерческий центр сертификации, позволяющий в автоматическом режиме через API выпускать бесплатные SSL/TLS сертификаты. Выдаются только сертификаты для валидации доменов (domain validation) со сроком действия 90 дней, что не является проблемой из-за наличия встроенной возможности автоматического перевыпуска сертификата, в результате чего обеспечивается непрерывность защиты.

Далее описан способ получить SSL-сертификат от Let’s Encrypt при помощи консольной утилиты LetsEncrypt-Win-Simple. Она представляет собой простой мастер, который позволяет выбрать один из сайтов, запущенных на IIS и автоматически выпустить и привязать к нему SSL-сертификат.

3.1 Создание SSL-сертификата

Распакуем его в каталог на сервере с IIS: c:\inetpub\letsencrypt

Запустится интерактивный мастер, который сначала попросит указать ваш e-mail, на который будут отправляться уведомления о проблемах с обновлением сертификата, и согласиться с пользовательским соглашением.

Затем нужно будет выбрать, что необходимо создать новый сертификат (N: Create new certificate) и выбрать тип сертификата (в нашем примере нет необходимости использовать сертификат с несколькими SAN), поэтому достаточно выбрать пункт 1. Single binding of an IIS site.

Далее утилита выведет список запущенных на IIS сайтов и предложит выбрать сайт, для которого нужно выпустить сертификат.

После валидации утилита letsencrypt-win-simple автоматически отправит запрос на генерацию сертификата, скачает его (все необходимые файлы, а также закрытый ключ сохраняются в каталог C:\Users\User\AppData\Roaming\letsencrypt-win-simple) и создаст привязку на сайте IIS. В том случае, если на сайте уже установлен SSL-сертификат, он будет заменен новым. Кроме того, будет создано правило в планировщике заданий Windows, которое запускается каждый день и автоматически выпускает и устанавливает новый сертификат каждые 60 дней.

3.2 Создание отдельного пула и сайта с подключенным с SSL-сертификатом.

Создаем отдельный пул в IIS для letsencrypt

Добавляем сайт в новый пул. Порт указываем 443 (или другой на который позже сделаем проброс на 443 порт).

Указать новый сертификат в «Сертификаты SSL»:

Настроить привязку к нашему сайту:

4. Подключение кассового оборудования. Проброс COM-портов через TCP/IP с помощью Virtual Serial Ports Emulator (VSPE).

4.1 Настройка VSPE на сервере

Запустить программу VSPE. Нажать на кнопку «Создать новое устройство».

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

В открывшемся окне в выпадающем меню выбрать TcpServer. Нажать кнопку «Далее».

Установить локальный номер tcp-порта, который будет прослушиваться. Выбрать COM-порт, к которому подключено оборудование через преобразователь интерфейсов. Нажать на кнопку «Настройки».

Нажать кнопку «Готово».

В появившемся окне нажать на кнопку запуска (зеленый треугольник). Серверная часть настроена.

4.2 Настройка VSPE на клиенте.

Запустить программу VSPE. Нажать на кнопку «Создать новое устройство».

В открывшемся окне в выпадающем меню выбрать «Connector».

Выбрать виртуальный COM-порт, который будет использоваться для проброса. Нажать на кнопку «Готово».

Нажать на кнопку «Создать новое устройство».

В открывшемся окне в выпадающем меню выбрать TcpClient

Указать IP-адрес удаленного сервера и номер TCP-порта, на который будет осуществляться подключение. Выбрать виртуальный COM-порт, который будет использоваться для соединения.

В появившемся окне нажать на кнопку запуска (зеленый треугольник). Клиентская часть готова.

После меняем настройки 1С на наши виртуальные порты. Делаем тестирование.

5. Примечание

Несколько нюансов данного ПО:

Программа не сохраняет настройки автоматически и не запускается в момент старта ОС. Поэтому необходимо сохранить настроенную конфигурацию и создать ярлык с параметром:

Созданный ярлык помещаем в автозагрузку или создаем bat-файл для запуска программы с использованием сохраненной конфигурации. Bat-файл должен содержать строку следующего формата:

Для автоматического запуска программы VSPE после запуска ОС Windows следует поместить ссылку на этот bat-файл в автозагрузку или планировщик заданий. (для серверной и клиентской части).

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

Нашим клиентам мы предлагаем реализацию данного проекта и последующее ИТ-обслуживание в рамках ИТ-аутсорсинга.

Оригинальная версия продукта: службы IIS версии 7.0 и более поздних версий
Исходный номер КБ: 943891

Введение

Расположения файлов журнала

По умолчанию IIS 7.0 и более поздние версии помещает файлы журнала в следующую папку:
inetpub\logs\Logfiles

Эта папка содержит отдельные каталоги для каждого веб-сайта World Wide Web. По умолчанию файлы журналов создаются в каталогах ежедневно, а файлы журналов называются с помощью даты. Например, файл журнала можно назвать exYYMMDD.log.

1 xx - Информационная

  • 100 . Продолжить.
  • 101 . Протоколы переключения.

2 xx - успех

  • 200 - ОК. Запрос клиента удался.
  • 201 — Создан.
  • 202 . Принято.
  • 203 . Неавторитивная информация.
  • 204 . Нет контента.
  • 205 — сброс контента.
  • 206 . Частичное содержимое.

3 xx — перенаправление

  • 301 . Перенесено навсегда.
  • 302 . Объект перемещен.
  • 304 . Не изменено.
  • 307 . Временное перенаправление.

4 xx — ошибка клиента

400 . Плохой запрос. Запрос не был понят сервером из-за неправильного синтаксиса. Клиент не должен повторять запрос без изменений.

  • 400.1 — недействительный загон назначения.
  • 400.2 — недействительный загон глубины.
  • 400.3 . Недействительный если загон.
  • 400.4 — Недействительный загон переписать.
  • 400.5 — недействительный загон для перевода.
  • 400.6 — недействительный орган запроса.
  • 400.7 — длина недействительных содержимого.
  • 400.8 — недействительный период времени.
  • 400.9 — недействительный маркер блокировки.

401 . Доступ отказано.

  • 401.1 — сбой Logon.
  • 401.2 — сбой Logon из-за конфигурации сервера.
  • 401.3 . Несанкционированные из-за ACL на ресурсе.
  • 401.4 . Сбой авторизации с помощью фильтра.
  • 401.5 . Авторизация не удалось с помощью приложения ISAPI/CGI.
  • 401.501 — отказано в доступе: слишком много запросов с одного и того же IP-адреса клиента; Динамическое ограничение IP-адресов одновременное ограничение скорости запроса достигнуто.
  • 401.502 — Запрет: слишком много запросов из одного и того же IP-адреса клиента; Динамическое ограничение IP Максимальное ограничение скорости запроса достигнуто.
  • 401.503 — доступ отказано: IP-адрес включен в список ограничений IP-адресов
  • 401.504 . Доступ отказано: имя хоста включено в список ограничений IP-адресов

404.0 — Не найден.

404.1 — сайт не найден.

404.2 — ограничение ISAPI или CGI.

404.3 — ограничение типа multipurpose Internet Mail Extensions (MIME).

404.4 . Не настроен обработник.

404.5 — отказано по запросу конфигурации фильтрации.

404.6 — Глагол отклонен.

404.7 — расширение файла отклонено.

404.8 — скрытое пространство имен.

404.9 — скрытый атрибут файла.

404.10 . Слишком долго запрашивать заглавную.

404.11 — Запрос содержит двойную последовательность побега.

404.12 . Запрос содержит высокотябные символы.

404.13 — слишком большая длина контента.

404.14 . Слишком долго запрашивать URL-адрес.

404.15 — слишком длинная строка запроса.

404.16 — запрос DAV, отправленный обработнику статического файла.

404.17 — динамическое содержимое, сопоставленное с обработилом статического файла с помощью сопоставления MIME подтекстата.

404.18 . Последовательность запроса отклонена.

404.19 — отклонено правилом фильтрации.

404.20 — слишком много сегментов URL-адресов

404.501 — не найден: слишком много запросов с одного и того же IP-адреса клиента; Динамическое ограничение IP-адресов одновременное ограничение скорости запроса достигнуто.

404.502 — не найден: слишком много запросов с одного и того же IP-адреса клиента; Динамическое ограничение IP Максимальное ограничение скорости запроса достигнуто.

404.503 — Не найден: IP-адрес включен в список ограничений IP-адресов

404.504 — Не найден: имя хозяина включено в список запрета ограничения IP

405 — метод запрещен.

  1. Клиентский браузер не принимает тип MIME запрашиваемой страницы.

408 . Время запроса.

412 . Не удалось предварительное условие.

5 xx — ошибка сервера

500 — ошибка внутреннего сервера.

500.0 — произошла ошибка Модуля или ISAPI.

500.11 . Приложение закрывается на веб-сервере.

500.12 . Приложение занято перезапуском на веб-сервере.

500.13 — веб-сервер слишком занят.

500.15 . Прямые запросы на Global.asax не допускаются.

500.19 . Данные конфигурации недействительны.

500.21 — модуль не распознается.

500.50 . Ошибка переписывание произошла во время RQ_BEGIN_REQUEST обработки уведомлений. Произошла ошибка выполнения правил конфигурации или входящие правила.

Здесь считыется конфигурация распределенных правил как для входящие, так и исходящие правила.

500.51 — ошибка переписывание произошла во время GL_PRE_BEGIN_REQUEST обработки уведомлений. Произошла глобальная конфигурация или ошибка выполнения глобальных правил.

Здесь прочитана глобальная конфигурация правил.

500.52 . Ошибка переписывание произошла во время RQ_SEND_RESPONSE обработки уведомлений. Произошло выполнение исходящие правила.

500.53 . Ошибка переписывание произошла во время RQ_RELEASE_REQUEST_STATE обработки уведомлений. Произошла ошибка выполнения исходящие правила. Правило настроено для выполнения до обновления кэша пользователя выходных данных.

500.100 — внутренняя ошибка ASP.

501 . Значения header указывают конфигурацию, которая не реализована.

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

  • 502.1 — время простоя приложения CGI.
  • 502.2 . Плохой шлюз: преждевременный выход.
  • 502.3 — плохой шлюз: ошибка подключения к forwarder (ARR).
  • 502.4 — плохой шлюз: нет сервера (ARR).

503 . Служба недоступна.

Subcode Описание
400.10 Недействительный загон X-Forwarded-For (XFF)
400.11 Недействительный запрос WebSocket

Ссылки

Заявление об отказе от ответственности за сведения о продуктах сторонних производителей

В этой статье упомянуты программные продукты независимых производителей. Корпорация Майкрософт не дает никаких гарантий, подразумеваемых и прочих, относительно производительности и надежности этих продуктов.

Использование веб-сервера и публикаций информационных баз — один из способов оптимизации 1С. Особенно при работе с ИБ в файловом варианте. Так безопаснее. Сотрудники подключаются к ИБ 1С через браузер или тонкий клиент , не имея прямого доступа к файлам.

В статье расскажем, как решали возникающие вопросы по настройкам Internet Information Services. Через призму своего опыта и коллег.

Сертификат выдается сроком на 90 дней. Для автоматического продления создается периодическое задание в Планировщике. При запуске задачи сайт должен быть доступен (пройти проверку домена) по 80-му порту.

II. Типовая настройка и публикация информационных баз на IIS

На что обратить внимание:

1. Состав компонентов IIS — в Интернете полно инструкций и указаний. Повторяться не будем.

2. Установка 1С необходимой разрядности . Варианта 2: x86 (32-разрядное приложение) или x64. Обязательно выбираем «Модули расширения веб-сервера».

3. Права для встроенной группы /пользователю веб-сервера (IUSR) на папки:

  • с установленной платформой — на «чтение и выполнение» (для старта процессов);
  • самих расположений ИБ — на «изменение» (в случае файлового варианта).

4. Публикация базы через Конфигуратор 1С . Возможно потребуется открыть программу с повышенными правами — «Запуск от имени администратора».

5. Для 32-разрядного клиента 1С в диспетчере IIS включаем разрешение запуска ( DefaultAppPool — Дополнительные параметры — Разрешены 32-разрядные приложения = True ). Для 1C x64 — значение не меняем.

6. На странице сопоставления обработчиков для «1С Web-service Extension» потребуется указать путь к исполняемому модулю :

  • x86 — «C:\Program Files (x86)\1cv8\8.3.x.xx\bin\wsisapi.dll»;
  • x64 — «C:\Program Files\1cv8\8.3.x.xx\bin\wsisapi.dll».

Либо изменяем путь к библиотеке в файлах web.config через Блокнот (располагается, как правило, в c:\inetpub\wwwroot\<имя базы>).

Если в п. 2 все сделано правильно — по указанному пути должен присутствовать файл wsisapi.dll.

7. В частных случаях требуется перезапуск служб IIS . Выполните «Перезапустить» в оснастке управления или перезагрузите сервер.

✅ Соблюдаем соответствие разрядности: если запускаем и публикуем 64-разрядный клиент 1С:Предприятие, то dll также должна быть 64-битной версии.

Если публикуем 32-разрядную версию 1С, то ставим разрешение запуска 32-разрядных приложений на IIS и проверяем путь к wsisapi из каталога x86.

III. Если клиент 1С зависает при подключении к базе по web

Прежде посмотрите этот материал — там общие рекомендации.

Другой случай. Файловая ИБ опубликована на IIS. После авторизации зависает на эмблеме 1С. При открытии Конфигуратора — все нормально.

В журналах Windows ошибка «Процесс, обслуживающий пул приложений "1С", не ответил на команду ping».

  • проверьте права на папку с базой 1С для IUSR/IIS_IUSRS, уровень доступа — на «изменение»;
  • в оснастке IIS «Пулы приложений — <пул_1С> — Дополнительные параметры — Модель процесса» задайте для « Максимальная задержка отклика при проверке связи » значение, превышающее 90 секунд;
  • посмотрите на поведение IIS при «Проверка связи включена» = False.
📝 Из справки: установка [pingingEnabled] (Проверка связи) в значение false не позволит IIS проверять, выполняется ли рабочий процесс, и таким образом сохранит его активным до остановки процесса отладки.

✅ Установка «Максимальное время отклика пинга» в большое значение позволит IIS продолжать наблюдение за рабочим процессом.

Информационная база 1C опубликована на IIS. При работе через тонкий клиент, при нажатии на «Отчеты» вываливается ошибка.

Описание: Необработанное исключение при выполнении текущего веб-запроса. Изучите трассировку стека для получения дополнительных сведений о данной ошибке и о вызвавшем ее фрагменте кода.

✅ Откройте настройки пула приложений и проверьте «Режим управляемого конвейера» = «Classic».

Читайте также: