Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.
Добрый день, хотел поделиться с вами результатом преодоления этих ошибок при работе с http сервисами 1С. С данной ошибкой мне пришлось столкнуться при переписывании мобильного приложения с web сервисов на http. Ошибка возникала при отправке http сервису POST запроса.
Ошибка 405
При работе с некорректным HTTP сервисом из мобильного приложения возвращалась ошибка 405, которая указывает на конкретную проблему. «405 Method Not Allowed — указанный клиентом метод нельзя применить к текущему ресурсу.» Долго не мог разобраться с данной ошибкой, так как в сервисе запрос был разрешен и шаблоны были настроены корректно.
Ошибка 500
При работе с некорректным HTTP сервисом из внешних программ возвращалась ошибка 500, которая ни о чем конкретном не говорит. «500 Internal Server Error — любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса».
Вроде HTTP сервис один, а при использовании запросов к нему из разных программ возвращались разные ошибки.
Расследование ошибок 405 и 500 в HTTP сервисе 1С
Времени на выяснение причин ушло очень много. За несколько дней до этой задачи мною были проведены десятки экспериментов по сборке и настройке web сервера apache 2.4 x64 SSL для работы с 1С. Все настройки в основном были связаны с кросс доменными запросами из web приложения на javascript. Столкнувшись с ошибками 405 и 500 на другом проекте я сразу полез в дебри конфигурации apache. После полного удаления apache поставил IIS и на нем вышла такая же ошибка. Поднял на виртуальной машине чистую систему, попробовал apache и iss, но ошибка так и проявлялась. Потом я вспомнил, что одна функция мобильного приложения уже давно использует http сервис и там все прекрасно работает. Создал http сервис с базовыми настройками и все заработало.
Как только я переносил код из web сервиса в функции http сервиса, сразу появлялись ошибки. Самое интересное, что отладка не срабатывала, т.е. POST запрос в пустую функцию приходил и отрабатывал, а в функцию с кодом нет.
На многих форумах ошибку 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% результат.
Если у вас остались вопросы, то вы можете задать мне их в социальных сетях или оставить комментарий ниже.
В результате POST запроса КодСостояния=405
Комрады! Направьте в нужную сторону с POST запросом к API с авторизацией по ключу.
Исходные данные: https://ekfgroup.com/podderzhka/download раздел «API для партнеров»
APIKey = ПолученныйПоEmailКлюч;
Соединение = Новый HTTPСоединение(«ekfgroup.com». Новый ЗащищенноеСоединениеOpenSSL());
Заголовки = Новый Соответствие;
Заголовки.Вставить(«Authorization», «Bearer «+APIKey);
Заголовки.Вставить(«Accept-Language», «ru»);
Заголовки.Вставить(«Accept-Charset», «utf-8»);
Заголовки.Вставить(«Content-Language», «ru»);
Заголовки.Вставить(«Content-Charset», «utf-8»);
Заголовки.Вставить(«Content-type», «application/x-www-form-urlencoded; charset=utf-8»);
Запрос = Новый HTTPЗапрос(«/api/1/ekf/catalog/files», Заголовки);
Запрос.УстановитьТелоИзСтроки(«vendorCode=mcb4763-1-01C-pro»,КодировкаТекста.UTF8);
Результат = Соединение.ОтправитьДляОбработки(Запрос);
Соответственно, Результат.КодСостояния = 405, данные не загружаются.
Как победить?
(5) 405: Method Not Allowed
Выполнение метода, определенного в запросе, не разрешено для ресурса, идентифицированного конкретным адресом. Ответ должен содержать Allow заголовок, со списком разрешенных методов для запрашиваемого ресурса.
Не к тому ресурсу обращаюсь раз поддерживается только GET, HEAD?
Источник
Ошибка 405 или 500 в HTTP сервисе 1С
Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.
Добрый день, хотел поделиться с вами результатом преодоления этих ошибок при работе с http сервисами 1С. С данной ошибкой мне пришлось столкнуться при переписывании мобильного приложения с web сервисов на http. Ошибка возникала при отправке http сервису POST запроса.
Ошибка 405
При работе с некорректным HTTP сервисом из мобильного приложения возвращалась ошибка 405, которая указывает на конкретную проблему. «405 Method Not Allowed — указанный клиентом метод нельзя применить к текущему ресурсу.» Долго не мог разобраться с данной ошибкой, так как в сервисе запрос был разрешен и шаблоны были настроены корректно.
Ошибка 500
При работе с некорректным HTTP сервисом из внешних программ возвращалась ошибка 500, которая ни о чем конкретном не говорит. «500 Internal Server Error — любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса».
Вроде HTTP сервис один, а при использовании запросов к нему из разных программ возвращались разные ошибки.
Расследование ошибок 405 и 500 в HTTP сервисе 1С
Времени на выяснение причин ушло очень много. За несколько дней до этой задачи мною были проведены десятки экспериментов по сборке и настройке web сервера apache 2.4 x64 SSL для работы с 1С. Все настройки в основном были связаны с кросс доменными запросами из web приложения на javascript. Столкнувшись с ошибками 405 и 500 на другом проекте я сразу полез в дебри конфигурации apache. После полного удаления apache поставил IIS и на нем вышла такая же ошибка. Поднял на виртуальной машине чистую систему, попробовал apache и iss, но ошибка так и проявлялась. Потом я вспомнил, что одна функция мобильного приложения уже давно использует http сервис и там все прекрасно работает. Создал http сервис с базовыми настройками и все заработало.
Как только я переносил код из web сервиса в функции http сервиса, сразу появлялись ошибки. Самое интересное, что отладка не срабатывала, т.е. POST запрос в пустую функцию приходил и отрабатывал, а в функцию с кодом нет.
На многих форумах ошибку 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% результат.
Если у вас остались вопросы, то вы можете задать мне их в социальных сетях или оставить комментарий ниже.
Источник
“1C:Link” tunnel is closed!
Please ensure that:
- you have active «1C:ITS» support contract;
- your products are registered at ITS Portal;
- PC with «1C:Link» agent is powered on;
- Agent is installed to the path with ASCII characters only;
- Agent setup is complete (auth. keys are installed and tunnel is opened);
- Antivirus or firewall are not blocking Agent components.
Try to reboot PC with «1C:Link» Agent, temporarily disable antivirus & firewall, reinstall Agent via User’s manual.
If it didn’t help, please contact us via support@1c.link and provide:
- link-agent.log file;
- type of published infobases (file-based, client-server);
- «System information» diagnostic file about PC with «1C:Link» agent.
Туннель “1С: Линк” закрыт!
Проверьте, что:
- у вас не закончился договор сопровождения “1С: ИТС”;
- ваши программные продукты зарегистрированы на портале Информационно-технологического сопровождения;
- компьютер с Агентом “1С: Линк” включен;
- Агент запущен из папки, в полном пути которой не содержится кириллических символов;
- в Агенте установлены ключи авторизации и открыт туннель;
- антивирус или брандмауэр не блокируют запуск компонентов Агента.
Попробуйте перезагрузить компьютер с линк-агентом, временно отключите антивирус и брандмауэр, переустановите Агент согласно руководству пользователя.
Источник
Cтатус HTTP ответа веб сервера
Код состояния HTTP — это часть строки заголовка, ответа веб сервера на запрос клиента, информирующая о результате запроса и о том, что клиент должен предпринять далее
Код состояния HTTP — это часть строки заголовка, ответа веб сервера на запрос клиента, информирующая о результате запроса и о том, что клиент должен предпринять далее. Думаю не все знают как выглядит заголовок ответа сервера, зато уверен, каждый, пользующийся интернетом, не раз сталкивались, со страницей 404 Not Found или 403 Forbadden. Это и есть, видимый пользователю результат, выдачи сервером, того или иного кода статуса в строке заголовке.
Коды состояния HTTP, разделены на 5 категорий. Клиент может быть не знаком с тем или иным кодом ответа HTTP, однако он должен отреагировать согласно категории кода. Итак протокол HTTP поддерживает следующие коды статуса, разделенные по категориям:
1xx: Information — информационные
2xx: Success — Успешное завершение
3xx: Redirection — Редирект ( перенаправление )
Коды данной категории, сообщают клиенту, что для завершения запроса, ему необходимо выполнить дополнительный запрос, как правило по другому URI, соответствующий адрес указывается в строке Location, ответа сервера. Программа — клиент может совершать дополнительные запросы без участия пользователя, при условии что дополнительный запрос делается методами GET или HEAD.
Некоторые клиенты некорректно работают с редиректами 301 и 302, применяя в запросе ко второму ресурсу метод GET, несмотря на то, что первый запрос был сделан с использованием другого метода. В протоколеHTTP версии 1.1, вместо ответа статуса 302, были введены дополнительные коды ответов, 303 и 307. Изменять метод, необходимо только в случает ответа сервера со статусом 303, в остальных случаях использовать исходный метод.
300 Multiple Choices — Несколько вариантов выбора. По запрошенному URI, существует несколько вариантов ресурса, различных по MIME типу. языку или другим признакам. В ответе сервера, передается список альтернатив, выбираемый клиентским приложением автоматически или самим пользователем. Появился в протоколе версии HTTP/1.0. 301 Moved Permanently — Перемещёно окончательно. Запрошенный ресурс был окончательно перемещен на URI, указанный в строке заголовка Location, ответа сервера. Некоторые клиенты, при обработке данного кода, ведут себя некорректно, см. выше. Появился в протоколе версии HTTP/1.0. 302 Found — Найдено ( Moved Temporarily ) Данный код статуса сообщает клиенту, что ресурс временно доступен по другому URI, указанному в строке заголовка Location, заголовка ответа сервера. Данный код используется например, при согласовании содержимого ( Content Negotiation ), выполняемого сервером. Появился в протоколе версии HTTP/1.0. 303 See Other — Смотреть другое. Документ из запрошенного URI, нужно запросить по адресу, указанному в строке заголовка Location, заголовка ответа сервера, используя метод GET, невзирая на то, каким методом был сделан первый запрос. Появился в протоколе версии HTTP/1.1. 304 Not Modified — Не изменялось. Данный код выдается в случае запроса документа, методом GET, с использованием заголовков If-Modified-Since или If-None-Match, и документ не был изменен с указанного момента времени. Появился в протоколе версии HTTP/1.0. 305 Use Proxy — Использовать прокси сервер. Запрос к ресурсу, должен выполняться через прокси-сервер., адрес которого, указан в строке заголовка Location, заголовка ответа сервера. Появился в протоколе версии HTTP/1.1. 307 Temporary Redirect — Временное перенаправление Запрошенный ресурс временно доступен по URI, указанному в строке заголовка Location, заголовка ответа сервера. Появился в протоколе версии HTTP/1.1.
4xx: Client Error — Ошибка клиента
Коды данной категории служат для указание на ошибку со стороны клиента. При использовании любых методов запроса, кроме HEAD, сервера возвращает пользователю гипертекстовое пояснение по данной ошибке.
400 Bad Request — Плохой запрос. Из-за синтаксической ошибки, запрос не был понят сервером. Появился в протоколе версии HTTP/1.0. 401 Unauthorized — Не авторизован. Ресурс требует идентификации пользователя. Клиентское приложение запрашивает у пользователя данные для аутентификации ( имя, пароль ) и передает их на сервер в заголовке WWW-Authenticate. Если данные указаны не правильно, будет снова выдан этот-же код статуса. Появился в протоколе версии HTTP/1.0. 402 Payment Required — Необходима оплата. Пока не используется. Появился в протоколе версии HTTP/1.1. 403 Forbidden — Запрещено. Сервер отказал в доступе к запрошенному ресурсу ввиду ограничений. Ограничения могут быть любыми, установленными администратором сервера, или определенным веб приложением. Например, в целях безопасности, закрыт доступ к файлу, .htacces или .htpasswd или к закрытой директории сайта, или в случае, когда аутентификация должна производится через веб приложение ( например сайтовый движок ), ну или блокировка по IP адресу, в случае слишком частых обращений. Появился в протоколе версии HTTP/1.0. 404 Not Found — Не найдено. Сервер не нашел запрошенный ресурс по указанному адресу. Кроме того данный код ответа можно использовать вместо 403, с целью, скрыть расположение документа, доступ к которому запрещен. Появился в протоколе версии HTTP/1.0. 405 Method Not Allowed — Метод не поддерживается. Клиент попытался использовать метод, недопустимый для данного ресурса. Сервер передает в заголовке, строку Allow, содержащую список допустимых методов. Появился в протоколе версии HTTP/1.1. 406 Not Acceptable — Не приемлемо. Запрошенный ресурс, не удовлетворяет, запрошенные характеристики. В случае, если запрос был сделан не методом HEAD, сервер вернет список допустимых характеристик запрошенного ресурса. Появился в протоколе версии HTTP/1.1. 407 Proxy Authentication Required — Необходима прокси авторизация. Данный код статуса, аналогичен коду 401 за исключением того, что аутентификация производится для прокси-сервера. Появился в протоколе версии HTTP/1.1. 408 Request Timeout — Время ожидания истекло. Истек таймаут ожидания передачи данных, между сервером и клиентом. Появился в протоколе версии HTTP/1.1. 409 Conflict — Конфликт. Конфликтная ситуация при обращении к ресурсу. Такое может произойти, например, при попытке одновременного изменения файла, методом PUT, несколькими клиентами. Появился в протоколе версииHTTP/1.1. 410 Gone — Удалён. Данный ответ выдается в случае, если документ был по указанному URI, но в данный момент удален. Появился в протоколе версии HTTP/1.1. 411 Length Required — Необходима длина. Этот код статуса говорит о том, что для данного URI, в заголовке запроса, должно быть указано значение в поле Content-Length. Появился в протоколе версии HTTP/1.1. 412 Precondition Failed — Условие «ложно. Данный код выдается в случае, если ни одно из условных полей заголовка не было удовлетворено. Появился в протоколе версии HTTP/1.1. 413 Request Entity Too Large — Запрошены слишком большие данные. Данный код выдается, если сервер по каким-либо причинам, не может передать, требуемый объем данных. Если это временная проблема, сервер может указать время, по истечении которого можно будет попробовать повторно запросить ресурс, в строке заголовка, Retry-After. Появился в протоколе версии HTTP/1.1. 414 Request-URI Too Long — Запрашиваемый URI слишком длинный. Слишком длинная строка запроса. Такая ситуация может произойти, например в случае попытки, передать данные методом GET, вместо использования POST. Появился в протоколе версии HTTP/1.1. 415 Unsupported Media Type — Неподдерживаемый тип данных. Сервер, по какой-то причине, отказался обрабатывать запрошенные данные, используемым методом. Появился в протоколе версии HTTP/1.1. 416 Requested Range Not Satisfiable — Запрашиваемый диапазон не достижим. В строке заголовка запроса Range, установлен диапазон, выходящий за рамки запрошенного ресурса и отсутствует строка If-Range. Появился в протоколе версии HTTP/1.1. 417 Expectation Failed — Ожидаемое не приемлемо. Сервер не может обработать строку заголовка запроса Expect. Появился в протоколе версии HTTP/1.1. 422 Unprocessable Entity — Необрабатываемый экземпляр. Запрос принят, тип данных может быть обработан, синтаксис XML данных в теле запроса верен, но имеет место логическая ошибка, не позволяющая обработать запрос к ресурсу. Используется в протоколеWebDAV. 423 Locked — Заблокировано. Запрошенный ресурс заблокирован от данного метода. Используется в протоколе WebDAV. 424 Failed Dependency — Невыполненная зависимость. Выполнение запроса, может зависеть от результата выполнения, какой-либо другой операции, при невыполнении данного условия, будет выдан этот код статуса. Используется в протоколе WebDAV. 425 Unordered Collection — Беспорядочный набор. Этот код статуса будет выдан в случае, если клиент отправил запрос обозначив положение в неотсортированной коллекции или используя порядок следования элементов отличный от серверного. Введено в черновике по WebDAV Advanced Collections Protocol. 426 Upgrade Required — Требуется обновление. Указание сервера, клиенту, обновить протокол. Заголовок ответа, должен содержать правильно составленные поля Upgrade и Connection. Введено в RFC 2817 для возможности перехода к TLS посредствомHTTP. 449 Retry With — Повторить с… Выдается в случае поступления не достаточного количества информации для обработки запроса. В заголовок ответа сервера, помещается строка Ms-Echo-Request. Введено корпорацией Microsoft дляWebDAV.
5xx: Server Error — Ошибка на стороне сервера
Коды данной категории, предназначены для ситуаций, когда обработка запроса не возможна по вине сервера. Во всех случаях, кроме использования метода HEAD, сервер должен включать в тело ответа, объяснение для пользователя.
500 Internal Server Error — Внутренняя ошибка сервера. Любая внутренняя ошибка на стороне сервера не подпадающая под остальные ошибки из категории 5хх. Появился в протоколе версии HTTP/1.0. 501 Not Implemented — Не реализовано. Сервер не поддерживает, необходимых для обработки запроса, возможностей. ( например не поддерживается необходимый метод обработки ). Появился в протоколе версии HTTP/1.0. 502 Bad Gateway — Плохой шлюз. Сервер, работающий в качестве прокси или шлюза, получил сообщение о неудачное в промежуточной операции. Появился в протоколе версии HTTP/1.0. 503 Service Unavailable — Сервис недоступен. Сервер не в состоянии обрабатывать запросы клиентов по техническим причинам. Появился в протоколе версии HTTP/1.0. 504 Gateway Timeout — Истек таймаут ожидания ответа шлюза. Проксирующий сервер или шлюз, не дождался ответа от вышестоящего сервера для завершения обработки запроса. Появился в протоколе версии HTTP/1.0. 505 HTTP Version Not Supported — Версия HTTP протокола не поддерживается. Сервер не поддерживает, или не может обработать, указанную в заголовке версию HTTP протокола. Появился в протоколе версии HTTP/1.0. 506 Variant Also Negotiates — Вариант тоже согласован. Из-за не верной конфигурации, выбранный вариант указывает сам на себя, в следствии чего, связывание прерывается. Добавлено в RFC 2295 для дополнения протокола HTTP технологией Transparent Content Negotiation. 507 Insufficient Storage — Переполнение хранилища. Недостаточно места для обработки текущего запроса. Возможно временная проблема. Используется в протоколе WebDAV. 509 Bandwidth Limit Exceeded — Пропускная возможность канала исчерпана. Данный код статуса, используется в случае превышения веб площадкой, отведенного ей лимита, на потребляемый трафик. Данный код не описан ни одним RFC и используется только модулем bw/limited, панели веб-хостинга cPanel. 510 Not Extended — Нет расширения. У сервера отсутствует расширение, которое пытается использовать клиентом. Сервер может передавать информацию, об имеющихся у него расширениях. Введено в RFC 2774 для дополнения протокола HTTPподдержкой расширений.
Методы обработки запросов HTTP
HTTP метод — это основная операция, которую необходимо выполнить над ресурсом. В названии могут использоваться любые символы, кроме управляющих последовательностей и разделителей, как правило это короткое слово на английском языке. Имена методов HTTP зависимы от регистра.
Любой веб сервер обязан работать, по крайней мере с двумя методами GET и HEAD. Если сервер не смог определить метод, указанный в заголовке запроса клиента, он должен вернуть код статуса 501 (Not Implemented), если-же метод серверу известен, но неприменим к данному ресурсу, будет возвращен код статуса 405 (Method Not Allowed). Как в первом, так и во втором случае, сервер должен включить в свой ответ, заголовок Allow со списком методов, которые он поддерживает.
Метод OPTIONS
Данный метод используется для выяснения поддерживаемых веб-сервером возможностей или параметров соединения с конкретным ресурсом. Сервер включает в ответный запрос заголовок Allow, со списком поддерживаемых методов и возможно информацию о поддерживаемых расширениях. Тело запроса клиента, содержит информацию об интересующих его данных, но на данном этапе формат тела и порядок работы с ним, не определен, пока, сервер должен его игнорировать. С ответным запросом сервера, происходит аналогичная ситуация.
Что-бы выяснить возможности сервера, клиент должен указать в запросе URI, символ — «*«, то есть данный запрос к серверу выглядит как: OPTIONS * HTTP/1.1. Кроме прочего, данный запрос может быть использован для проверки работоспособности сервера и поддержки им протокола HTTP, версии 1.1. Результаты данного запроса не кэшируются.
Метод GET
Метод GET, применяется для запроса конкретного ресурса. Так-же с помощью GET, может быть инициирован некий процесс, при этом, в тело ответа, включается информация о ходе выполнения инициированного запросом действия.
Параметры для выполнения запроса, передаются в URI запрашиваемого ресурса, после символа «?«. Запрос в таком случае выглядит примерно так: GET /some/resource?param1=val1¶m2=val2 HTTP/1.1.
Как установлено в стандарте HTTP, запросы методом GET, являются идемпотентными, то есть, повторная отправка одного и того-же запроса, методом GET, должна приводить к одному и тому-же результату, в случае, если сам ресурс, в промежутках между запросами, изменен не был, что позволяет кэшировать результаты, выдаваемые на запрос методом GET.
Кроме вышесказанного, существуют еще два вида метода GET, это:
условный GET, содержащий заголовки If-Modified-Since, If-Match, If-Range и им подобные,
Частичный GET, содержащий заголовок Range с указанием байтового диапазона данных, которые сервер должен отдать. Данный вид запроса используется для докачки и организации многопоточных закачек.
Порядок работы с этими подвидами запроса GET, стандартами определен отдельно.
Метод HEAD
Данный метод, аналогичен методу GET, с той лишь разницей, что сервер не отправляет тело ответа. Метод HEAD, как правило используется для получения метаданных ресурса, проверки URL ( есть-ли указанный ресурс на самом деле ) и для выяснения факта изменения ресурса с момента последнего обращения к нему.
Заголовки ответа могут быть закэшированы, при несоответствии метаданных и информации в кэше, копия ресурса помечается как устаревшая.
Метод POST
Метод POST, используется для передачи пользовательских данных на сервер, указанному ресурсу. Примером может послужить HTML форма с указанным атрибутом Method=»POST», для отправки комментария к статье. После заполнения необходимых полей формы, пользователь жмет кнопку «Отправить» и данные, методом POST, передаются серверному сценарию, который в свою очередь выводит их на странице комментариев. Таким-же образом, с помощью метода POST, можно передавать файлы.
В отличии от GET, метод POST, не является идемпотентным, то есть неоднократное повторение запроса POST, может выдавать разные результаты. В нашем случае, будет появляться новая копия комментария при каждом запросе.
Если в результате запроса методом POST, возвращается код 200 (Ok) или 204 (No Content), в тело ответа сервера, добавляется сообщение о результате выполнения запроса. Например, если был создан ресурс, сервер вернет 201 (Created), указав при этом URI созданного ресурса в заголовке Location.
Ответы сервера, на выполнение метода 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, клиент может увидеть, какие изменения были сделаны в запросе, промежуточными серверами.
Метод LINK
Связывает указанный ресурс с другим ресурсом.
Источник
Содержание
- “1C:Link” tunnel is closed!
- Туннель “1С: Линк” закрыт!
- Нужна помощь?
- Не нашли ответа? Напишите нам Мы обязательно решим ваш вопрос!
- Общие вопросы
- info@1c.link
- Техническая проблема
- support@1c.link
- Сбор диагностических сведений
- Версия платформы «1С: Предприятие»
- Файл link-agent-log.txt
- Снимки экрана
- Создание скриншота в Windows
- Создание скриншота в MacOS X
- Создание скриншота на Apple iPad
- Сведения о системе
- Для Windows 7
- Для Windows 8 / 10
- Файл ibases.v8i
- Проблема в прикладном решении (конфигурации) 1С
- 1C ошибка HTTP при обращении к серверу
- При запуске базы появляется сообщение об ошибке
- Ошибка 405 или 500 в HTTP сервисе 1С
- Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.
- Ошибка 405
- Ошибка 500
- Расследование ошибок 405 и 500 в HTTP сервисе 1С
- Итог разбора ошибок 405 и 500 в HTTP сервисе 1С.
- Обновление 12.01.2019
“1C:Link” tunnel is closed!
Please ensure that:
- you have active «1C:ITS» support contract;
- your products are registered at ITS Portal;
- PC with «1C:Link» agent is powered on;
- Agent is installed to the path with ASCII characters only;
- Agent setup is complete (auth. keys are installed and tunnel is opened);
- Antivirus or firewall are not blocking Agent components.
Try to reboot PC with «1C:Link» Agent, temporarily disable antivirus & firewall, reinstall Agent via User’s manual.
If it didn’t help, please contact us via support@1c.link and provide:
- link-agent.log file;
- type of published infobases (file-based, client-server);
- «System information» diagnostic file about PC with «1C:Link» agent.
Туннель “1С: Линк” закрыт!
Проверьте, что:
- у вас не закончился договор сопровождения “1С: ИТС”;
- ваши программные продукты зарегистрированы на портале Информационно-технологического сопровождения;
- компьютер с Агентом “1С: Линк” включен;
- Агент запущен из папки, в полном пути которой не содержится кириллических символов;
- в Агенте установлены ключи авторизации и открыт туннель;
- антивирус или брандмауэр не блокируют запуск компонентов Агента.
Попробуйте перезагрузить компьютер с линк-агентом, временно отключите антивирус и брандмауэр, переустановите Агент согласно руководству пользователя.
Источник
Нужна помощь?
Не нашли ответа? Напишите нам
Мы обязательно решим ваш вопрос!
Чтобы получить максимально быстрый и полный ответ на ваше обращение, придерживайтесь следующих рекомендаций при составлении запросов.
Общие вопросы
info@1c.link
Перед тем, как задать вопрос технической поддержке, проверьте, возможно ответ на него есть в одном из разделов нашего сайта:
- Вопросы и ответы — здесь разобраны наиболее часто встречающиеся вопросы пользователей сервиса «1С:Линк»
- Общая информация о сервисе — здесь описаны основные характеристики сервиса, такие как: поддерживаемые конфигурации, системные требования, а также вопросы лицензирования
- Руководство пользователя — здесь детально освещены все этапы настройки сервиса
- Информация о версиях — проверьте, возможно ваша ошибка исправлена в последней версии Агента
Техническая проблема
support@1c.link
В письме с описанием проблемы обязательно укажите следующую информацию:
- версия операционной системы;
- версия платформы «1С: Предприятие 8» и название и версия прикладной конфигурации (как узнать номера версий?);
- режим работы (файловый или клиент-серверный);
- название и версию антивируса на компьютере с Агентом «1С: Линк».
Также к письму необходимо дополнительно приложить следующие файлы:
Сбор диагностических сведений
Версия платформы «1С: Предприятие»
В службу технической поддержки сервиса «1С: Линк» необходимо предоставить версии установленной прикладной конфигурации и пл. «1С: Предприятие». Для этого необходимо сделать следующее:
- Откройте базу 1С.
- В меню выберите «Файл -> Справка -> О программе. «
- В появившемся окне «О программе» будут указаны необходимые версии
Файл link-agent-log.txt
Чтобы просмотреть лог (технический журнал) Агента 1С:Линк, необходимо открыть файл link-agent.log, который расположен в той же директории, что и link-agent.exe При обращении в службу поддержки сервиса 1С:Линк по техническим вопросам, необходимо прикладывать файл link-agent-log.txt к электронному письму.
Снимки экрана
Для создания графического файла можно пользоваться любым редактором рисунков, например, простейшей программой Microsoft Paint (которую в операционной системе Windows вы найдете по ссылке главного меню Пуск / Программы / Стандартные). Лучше всего сохранить рисунок в файле формата png или jpg (избегая формата bmp из-за большого размера файла).
Создание скриншота в Windows
Создание скриншота полного экрана
Вставить в любой открытый редактор изображений (Наример: Paint, Диспетчер рисунков Microsoft Office и т.д.)
Создание скриншота последнего активного окна
Вставить в любой открытый редактор изображений (Наример: Paint, Диспетчер рисунков Microsoft Office и т.д.)
Обработать полученный скриншот, выделив проблемную область и добавить комментарии удобнее всего в программе Skitch.
Создание скриншота в MacOS X
Command + Shift + 3: весь экран в файл на рабочем столе
Command + Shift + 4: выделенная область в файл
Command + Shift + 4 + пробел: окно программы в файл
Обработать полученный скриншот, выделив проблемную область и добавить комментарии удобнее всего в программе Skitch.
Создание скриншота на Apple iPad
Когда вам понадобится сделать скриншот, одновременно нажмите (кратковременно!) кнопку «Вкл./Выкл.» и кнопку «Домой». Появится вспышка, сопровождаемая характерным звуком — щелчком затвора фотоаппарата. Всё — скриншот готов! Обработать полученный скриншот, выделив проблемную область и добавить комментарии удобнее всего в программе Skitch .
Сведения о системе
Для Windows 7
Откройте меню «Пуск». Выберите пункт «Стандартные»-«Служебные» и запустите программу «Сведения о системе». В програме выберите пункт меню «Файл»-«Экспорт» и пришлите в службу технической поддержки сформированный файл.
Для Windows 8 / 10
Откройте меню «Пуск». Выберите пункт «Панель управления»-«Администрирование» и запустите программу «Сведения о системе». В програме выберите пункт меню «Файл»-«Экспорт» и пришлите в службу технической поддержки сформированный файл.
Файл ibases.v8i
При обращении в службу поддержки сервиса 1С:Линк по техническим вопросам вам может потребоваться приложить этот файл к электронному письму.
Файл ibases.v8i расположен в каталоге C:Users AppDataRoaming1C1CEStart
Проблема в прикладном решении (конфигурации) 1С
По вопросам, связанным с функциональными возможностями и работой прикладных программных продуктов «1С:Предприятие 8» просим обращаться к аттестованным специалистам вашей компании и службу поддержки вашей компании-франчайзи.
Партнеры-франчайзи могут обращаться на Линию консультаций Фирмы 1С по телефону:
или по электронной почте:
Перед обращением на Линию консультаций попробуйте следующее:
- обновите пл. «1С: Предприятие 8» до последней версии;
- обновите прикладную конфигурацию до последнего релиза;
- очистите кеш 1С на ПК пользователя при помощи скрипта:
https://d.1c.link/ClearCache.zip - отключите расширения браузера;
- выполните данную операцию в другом браузере (IE, Firefox);
- попробуйте воспользоваться тонким клиентом.
Если ошибка продолжит появляться, при составлении обращения просьба сразу указывать следующие данные:
- код партнера;
- версия платформы «1С: Предприятие 8»;
- название и релиз конфигурации (типовая или измененная /кастомизированная);
- название и версия браузера в котором проявлется ошибка, а так же установленные в нем расширения (adblock, evernote, smart yutube и т.п.);
- появляется ли данная ошибка при отключении расширений браузера, в других браузерах и (или) тонком клиенте;
- вопрос или описание проблемы со скриншотами (если конфигурация доработанная, воспроизводится ли на типовой базе).
Очень желательно так же приложить тестовый пример с описанием воспроизведения ситуации на ТИПОВОЙ конфигурации.
Источник
1C ошибка HTTP при обращении к серверу
1С Предприятие это программный продукт который позволяет очень легко и быстро автоматизировать работу в какой либо организации. Сейчас наверно не возможно найти организацию в которой бы не использовалось какая либо конфигурация 1С. Поэтому уметь с ней работать должен каждый ИТ специалист даже начинающий. Необходимо обладать хотя бы навыками администрирование, подключение клинетов, настройка доступа, обновление и т.д. Так же нужно знать как решать самые элементарные ошибки которые возникают во время работы и запуска 1С. Таких ошибок достаточно много, о некоторых я уже рассказывал в следующих статьях, с которыми Вам обязательно нужно ознакомиться.
При запуске базы появляется сообщение об ошибке
Сегодня рассмотрим еще одну, она возникает в момент запуска информационной базы которая опубликована на веб сервере.
1C ошибка HTTP при обращении к серверу удаленный узел не прошел проверку
Если нажать «Подробно» то можно увидеть.
Невосстановимая ошибка
Ошибка при выполнении запроса POST к ресурсу /e1cib/login:
по причине:
Ошибка HTTP при обращении к серверу: https://…
Удаленный узел не прошел проверку
Это говорит о том что на сервере по каким либо причинам не работает HTTPS. Либо сбились настройки самого сервера либо просто истек срок действия сертификата SSL. Проверить это можно введя в браузере путь до информационной базы. Если вы видите тоже самое что на скриншоте ниже то проблема точно с сертификатом сервера.
Решить проблему можно отключив проверку, для этого выбираем базу и жмем «Изменить».
Потом нужно нажать «Дополнительно».
Первое окно пропускаем.
А в следующем выбираем «Не предоставлять сертификат» и «Не проверять сертификат сервера».
Теперь все должно запуститься, но помните что это не безопасно, так как есть вероятность перехвата данных.
Либо как вариант можно также изменить HTTPS на HTTP в адресе информационной базы.
Источник
Ошибка 405 или 500 в HTTP сервисе 1С
Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.
Добрый день, хотел поделиться с вами результатом преодоления этих ошибок при работе с http сервисами 1С. С данной ошибкой мне пришлось столкнуться при переписывании мобильного приложения с web сервисов на http. Ошибка возникала при отправке http сервису POST запроса.
Ошибка 405
При работе с некорректным HTTP сервисом из мобильного приложения возвращалась ошибка 405, которая указывает на конкретную проблему. «405 Method Not Allowed — указанный клиентом метод нельзя применить к текущему ресурсу.» Долго не мог разобраться с данной ошибкой, так как в сервисе запрос был разрешен и шаблоны были настроены корректно.
Ошибка 500
При работе с некорректным HTTP сервисом из внешних программ возвращалась ошибка 500, которая ни о чем конкретном не говорит. «500 Internal Server Error — любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса».
Вроде HTTP сервис один, а при использовании запросов к нему из разных программ возвращались разные ошибки.
Расследование ошибок 405 и 500 в HTTP сервисе 1С
Времени на выяснение причин ушло очень много. За несколько дней до этой задачи мною были проведены десятки экспериментов по сборке и настройке web сервера apache 2.4 x64 SSL для работы с 1С. Все настройки в основном были связаны с кросс доменными запросами из web приложения на javascript. Столкнувшись с ошибками 405 и 500 на другом проекте я сразу полез в дебри конфигурации apache. После полного удаления apache поставил IIS и на нем вышла такая же ошибка. Поднял на виртуальной машине чистую систему, попробовал apache и iss, но ошибка так и проявлялась. Потом я вспомнил, что одна функция мобильного приложения уже давно использует http сервис и там все прекрасно работает. Создал http сервис с базовыми настройками и все заработало.
Как только я переносил код из web сервиса в функции http сервиса, сразу появлялись ошибки. Самое интересное, что отладка не срабатывала, т.е. POST запрос в пустую функцию приходил и отрабатывал, а в функцию с кодом нет.
На многих форумах ошибку 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% результат.
Если у вас остались вопросы, то вы можете задать мне их в социальных сетях или оставить комментарий ниже.
Источник
Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.
Добрый день, хотел поделиться с вами результатом преодоления этих ошибок при работе с http сервисами 1С. С данной ошибкой мне пришлось столкнуться при переписывании мобильного приложения с web сервисов на http. Ошибка возникала при отправке http сервису POST запроса.
Ошибка 405
При работе с некорректным HTTP сервисом из мобильного приложения возвращалась ошибка 405, которая указывает на конкретную проблему. «405 Method Not Allowed — указанный клиентом метод нельзя применить к текущему ресурсу.» Долго не мог разобраться с данной ошибкой, так как в сервисе запрос был разрешен и шаблоны были настроены корректно.
Ошибка 500
При работе с некорректным HTTP сервисом из внешних программ возвращалась ошибка 500, которая ни о чем конкретном не говорит. «500 Internal Server Error — любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса».
Вроде HTTP сервис один, а при использовании запросов к нему из разных программ возвращались разные ошибки.
Расследование ошибок 405 и 500 в HTTP сервисе 1С
Времени на выяснение причин ушло очень много. За несколько дней до этой задачи мною были проведены десятки экспериментов по сборке и настройке web сервера apache 2.4 x64 SSL для работы с 1С. Все настройки в основном были связаны с кросс доменными запросами из web приложения на javascript. Столкнувшись с ошибками 405 и 500 на другом проекте я сразу полез в дебри конфигурации apache. После полного удаления apache поставил IIS и на нем вышла такая же ошибка. Поднял на виртуальной машине чистую систему, попробовал apache и iss, но ошибка так и проявлялась. Потом я вспомнил, что одна функция мобильного приложения уже давно использует http сервис и там все прекрасно работает. Создал http сервис с базовыми настройками и все заработало.
Как только я переносил код из web сервиса в функции http сервиса, сразу появлялись ошибки. Самое интересное, что отладка не срабатывала, т.е. POST запрос в пустую функцию приходил и отрабатывал, а в функцию с кодом нет.
На многих форумах ошибку 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% результат.
Если у вас остались вопросы, то вы можете задать мне их в социальных сетях или оставить комментарий ниже.
Источник
Ошибка 405: причины и решения
В этом выпуске: признаки ошибки 405; решения проблемы ошибки 405 в PHP; советы по устранению Error 405. Подробно о проблеме и путях решения.
Появление ошибки 405 следует трактовать, как произведение операции сервером с запретом на определенном этапе ее совершения. Причин ее появления немало и нужно уметь определять ошибку на предмет признаков, хотя и в этом случае есть исключения.
Основные признаки: ошибка 405
Идентификация проблемы осуществляется с помощью диалогового окна с соответствующей информацией. После сообщения об ошибке, программа прекращает работу. В браузерах подобное известие может преследовать пользователя сразу на нескольких порталах. Чаще всего о признаках проблемы свидетельствует обозначения HTTP 405 и Method Not Allowed. Впрочем, в некоторых случаях владелец устройства не может сразу определить ошибку. К примеру, причин медленной работы операционной системы или слабого реагирования на действия с помощью клавиатуры и компьютерной мыши довольно много. На этом этапе нет отчетливых отличий 405-й ошибки от других сбоев.
Сюда же относятся периодические «зависания», когда компьютер перестает реагировать на любые действия пользователя и останавливает работу всех программ. В случае с отображением упомянутой ошибки в веб-обозревателях, то браузер может делать ложные выводы касательно определения проблемы. Например, нередко случаются ситуации, когда возникает ошибка 404 на нормально функционирующих ресурсах вместо 405. В свою очередь, делать вывод только по предупреждению от браузера не стоит.
Причины возникновения ошибки 405
Одним из самых распространенных источников проблемы является функционирование php-скрипта. Данный инструмент импортирует данные на сайт, но дело в том, что касательно выполнения скрипта существует временное ограничение в 30 секунд. Упомянутая опция устанавливается на хостинге и подобрать оптимальный для себя параметр невозможно. Исходя из этого, формируется и корень ошибки – скрипту недостаточно временных рамок, утвержденных хостингом. В результате этого пользователь может наблюдать ошибку 405. Если проблема возникает из-за приведенной причины, юзеру следует воспользоваться одним из советов.
Советы по решению ошибки 405 в PHP:
Еще одной распространенной причиной ошибки часто становятся POST-запросы. Сущность проблемы заключается в обработке расширений файлов с помощью инструмента apache. Ряд расширений могут негативно влиять на работу скрипта, поэтому их следует удалить. Внести необходимые изменения нужно в окне Статические файлы. Путь к нему выглядит следующим образом: Хостинг – Мои сайты – Настройка сайта.
Как и во многих других ситуациях, вирусы могут быть причиной возникновения ошибки. Вредоносное программное обеспечение либо повреждает веб-обозреватель, либо полностью захватывает контроль над ним. В дальнейшем браузер может выдавать целый ряд известий о проблемах. Кроме того, удаление или установка системного программного обеспечения может привести к повреждению реестра, который, в свою очередь, инициирует ошибку 405.
Способы устранения: ошибка 405 (Error 405)
Для ликвидации проблемы рекомендуется принятие следующих мер:
Одна или несколько из перечисленных операций точно помогут пользователю избавиться от надоедливых уведомлений и запретов. Исходя из упомянутых рекомендаций, можно сделать вывод, что наиболее эффективная профилактика от появления подобных проблем – это поддержка операционной системы в надлежащем функционировании.
Источник
Устранение неполадок в приложениях веб-API2, работающих в Visual Studio, и ошибках на рабочем сервере IIS
В этом документе объясняется, как устранять неполадки в приложениях веб-API2, развернутых на рабочем сервере IIS. В нем рассматриваются распространенные ошибки HTTP 405 и 501.
Программное обеспечение, используемое в этом руководстве
В приложениях веб-API обычно используется несколько глаголов HTTP: GET, POST, размещение, удаление и иногда исправление. С другой стороны, разработчики могут столкнуться с ситуациями, когда эти глаголы реализуются другим модулем IIS на рабочем сервере IIS, что приводит к ситуации, когда контроллер веб-API, который правильно работает в Visual Studio или на сервере разработки, будет Возвращает ошибку HTTP 405 при развертывании на рабочем сервере IIS.
Причины ошибок HTTP 405
Первый шаг к изучению способов устранения ошибок HTTP 405 состоит в том, чтобы понять, что действительно означает ошибка HTTP 405. Основным управляющим документом для HTTP является RFC 2616, который определяет код состояния HTTP 405 как Недопустимый метод, и далее описывает этот код состояния как ситуацию, когда «метод, указанный в строке запроса, не разрешен для ресурса, определяемого запросом URI.» другими словами, команда HTTP не разрешена для конкретного URL-адреса, запрошенного клиентом HTTP.
В качестве краткого анализа ниже приведены некоторые из наиболее используемых методов HTTP, как определено в RFC 2616, RFC 4918 и RFC 5789.
Метод HTTP | Description |
---|---|
GET | Этот метод используется для получения данных из универсального кода ресурса (URI), который, вероятно, является наиболее используемым методом HTTP. |
HEAD | Этот метод во многом аналогичен методу GET, за исключением того, что он фактически не извлекает данные из URI запроса. он просто извлекает состояние HTTP. |
POST | Этот метод обычно используется для отправки новых данных в универсальный код ресурса (URI). POST часто используется для отправки данных формы. |
PUT | Этот метод обычно используется для отправки необработанных данных в универсальный код ресурса (URI). РАЗМЕЩЕНИЕ часто используется для отправки данных JSON или XML в приложения веб-API. |
DELETE | Этот метод используется для удаления данных из URI. |
OPTIONS | Этот метод обычно используется для получения списка методов HTTP, которые поддерживаются для URI. |
ПЕРЕМЕЩЕНИЕ КОПИРОВАНИЯ | Эти два метода используются с WebDAV, и их назначение говорят сами за себя. |
MKCOL | Этот метод используется с WebDAV и используется для создания коллекции (например, каталога) по указанному универсальному коду ресурса (URI). |
PROPPATCH PROPFIND | Эти два метода используются с WebDAV и используются для запроса или задания свойств URI. |
РАЗБЛОКИРОВАТЬ БЛОКИРОВКУ | Эти два метода используются с WebDAV и используются для блокировки или разблокировки ресурса, определяемого URI запроса при создании. |
PATCH | Этот метод используется для изменения существующего HTTP-ресурса. |
Однако если метод HTTP настроен для использования на сервере, но он был отключен для данного универсального кода ресурса (URI), сервер отправит сообщение об ошибке » метод http 405 не разрешен «.
Пример ошибки HTTP 405
Следующий пример HTTP-запроса и ответа иллюстрирует ситуацию, когда клиент HTTP пытается разместить значение в веб-API на веб-сервере, а сервер возвращает ошибку HTTP, указывающую, что метод размещения не разрешен:
Устранение ошибок HTTP 405
Следующий пример является выдержкой из файла ApplicationHost. config для сервера IIS, который ВОЗВРАЩАЛ ошибку HTTP 405 при использовании метода размещения для отправки данных в приложение веб-API. В этом отрывке определено несколько обработчиков HTTP, и каждый обработчик имеет свой набор методов HTTP, для которых он настроен — последняя запись в списке является статическим обработчиком содержимого, который является обработчиком по умолчанию, который используется после того, как другие обработчики имели Чанк д для проверки запроса:
В предыдущем примере обработчик WebDAV и обработчик URL-адресов без расширений для ASP.NET (который используется для веб-API) четко определены для отдельных списков методов HTTP. Обратите внимание, что обработчик DLL ISAPI настроен для всех методов HTTP, хотя такая конфигурация не обязательно приведет к ошибке. Однако такие параметры конфигурации следует учитывать при устранении ошибок HTTP 405.
В предыдущем примере обработчик DLL ISAPI не является проблемой. на самом деле, проблема не была определена в файле ApplicationHost. config для сервера IIS — проблема была вызвана записью, которая была создана в файле Web. config при создании приложения веб-API в Visual Studio. Следующий фрагмент из файла Web. config приложения показывает расположение проблемы:
В этом отрывке обработчик URL-адресов без расширений для ASP.NET переопределен для включения дополнительных методов HTTP, которые будут использоваться с приложением веб-API. Однако, поскольку для обработчика WebDAV определен аналогичный набор методов HTTP, возникает конфликт. В этом конкретном случае обработчик WebDAV определяется и загружается службами IIS, даже если для веб-сайта, включающего приложение веб-API, отключен протокол WebDAV. Во время обработки запроса HTTP-размещения IIS вызывает модуль WebDAV, так как он определен для команды размещения. При вызове модуля WebDAV проверяет его конфигурацию и видит, что он отключен, поэтому он возвращает ошибку «метод HTTP 405 не разрешен » для любого запроса, напоминающего запрос WebDAV. Чтобы устранить эту проблему, следует удалить WebDAV из списка модулей HTTP для веб-сайта, на котором определено приложение веб-API. В следующем примере показано, как это может выглядеть:
Этот сценарий часто встречается после публикации приложения из среды разработки в рабочей среде IIS. это происходит потому, что список обработчиков и модулей различается в средах разработки и рабочей среде. Например, если вы используете Visual Studio 2012 или более поздней версии для разработки приложения веб-API, IIS Express является веб-сервером по умолчанию для тестирования. Этот веб-сервер разработки — это уменьшенная версия полной функциональности IIS, которая поставляется в серверном продукте, и этот веб-сервер разработки содержит несколько изменений, которые были добавлены в сценарии разработки. Например, модуль WebDAV часто устанавливается на рабочем веб-сервере, на котором работает полная версия IIS, хотя он может не использоваться. Версия для разработки IIS (IIS Express) устанавливает модуль WebDAV, но записи для модуля WebDAV намеренно заносятся в комментарий, поэтому модуль WebDAV никогда не загружается на IIS Express, если только вы специально не измените конфигурацию IIS Express параметры для добавления функции WebDAV к установке IIS Express. В результате веб-приложение может правильно работать на компьютере разработчика, но при публикации приложения веб-API на рабочем веб-сервере IIS могут возникать ошибки HTTP 405.
Ошибки HTTP 501
Чтобы устранить эту проблему, необходимо переустановить любое приложение, которое пытается использовать метод HTTP, для которого у него нет соответствующих определений модуля или обработчика.
Сводка
Ошибки HTTP 405 возникают, если метод HTTP не разрешен веб-сервером для запрошенного URL-адреса. Это условие часто возникает, когда определенный обработчик определен для определенной команды, и этот обработчик переопределяет обработчик, который ожидает обработки запроса.
Источник
Cтатус HTTP ответа веб сервера
Код состояния HTTP — это часть строки заголовка, ответа веб сервера на запрос клиента, информирующая о результате запроса и о том, что клиент должен предпринять далее
Код состояния HTTP — это часть строки заголовка, ответа веб сервера на запрос клиента, информирующая о результате запроса и о том, что клиент должен предпринять далее. Думаю не все знают как выглядит заголовок ответа сервера, зато уверен, каждый, пользующийся интернетом, не раз сталкивались, со страницей 404 Not Found или 403 Forbadden. Это и есть, видимый пользователю результат, выдачи сервером, того или иного кода статуса в строке заголовке.
Коды состояния HTTP, разделены на 5 категорий. Клиент может быть не знаком с тем или иным кодом ответа HTTP, однако он должен отреагировать согласно категории кода. Итак протокол HTTP поддерживает следующие коды статуса, разделенные по категориям:
1xx: Information — информационные
2xx: Success — Успешное завершение
3xx: Redirection — Редирект ( перенаправление )
Коды данной категории, сообщают клиенту, что для завершения запроса, ему необходимо выполнить дополнительный запрос, как правило по другому URI, соответствующий адрес указывается в строке Location, ответа сервера. Программа — клиент может совершать дополнительные запросы без участия пользователя, при условии что дополнительный запрос делается методами GET или HEAD.
Некоторые клиенты некорректно работают с редиректами 301 и 302, применяя в запросе ко второму ресурсу метод GET, несмотря на то, что первый запрос был сделан с использованием другого метода. В протоколеHTTP версии 1.1, вместо ответа статуса 302, были введены дополнительные коды ответов, 303 и 307. Изменять метод, необходимо только в случает ответа сервера со статусом 303, в остальных случаях использовать исходный метод.
300 Multiple Choices — Несколько вариантов выбора. По запрошенному URI, существует несколько вариантов ресурса, различных по MIME типу. языку или другим признакам. В ответе сервера, передается список альтернатив, выбираемый клиентским приложением автоматически или самим пользователем. Появился в протоколе версии HTTP/1.0. 301 Moved Permanently — Перемещёно окончательно. Запрошенный ресурс был окончательно перемещен на URI, указанный в строке заголовка Location, ответа сервера. Некоторые клиенты, при обработке данного кода, ведут себя некорректно, см. выше. Появился в протоколе версии HTTP/1.0. 302 Found — Найдено ( Moved Temporarily ) Данный код статуса сообщает клиенту, что ресурс временно доступен по другому URI, указанному в строке заголовка Location, заголовка ответа сервера. Данный код используется например, при согласовании содержимого ( Content Negotiation ), выполняемого сервером. Появился в протоколе версии HTTP/1.0. 303 See Other — Смотреть другое. Документ из запрошенного URI, нужно запросить по адресу, указанному в строке заголовка Location, заголовка ответа сервера, используя метод GET, невзирая на то, каким методом был сделан первый запрос. Появился в протоколе версии HTTP/1.1. 304 Not Modified — Не изменялось. Данный код выдается в случае запроса документа, методом GET, с использованием заголовков If-Modified-Since или If-None-Match, и документ не был изменен с указанного момента времени. Появился в протоколе версии HTTP/1.0. 305 Use Proxy — Использовать прокси сервер. Запрос к ресурсу, должен выполняться через прокси-сервер., адрес которого, указан в строке заголовка Location, заголовка ответа сервера. Появился в протоколе версии HTTP/1.1. 307 Temporary Redirect — Временное перенаправление Запрошенный ресурс временно доступен по URI, указанному в строке заголовка Location, заголовка ответа сервера. Появился в протоколе версии HTTP/1.1.
4xx: Client Error — Ошибка клиента
Коды данной категории служат для указание на ошибку со стороны клиента. При использовании любых методов запроса, кроме HEAD, сервера возвращает пользователю гипертекстовое пояснение по данной ошибке.
400 Bad Request — Плохой запрос. Из-за синтаксической ошибки, запрос не был понят сервером. Появился в протоколе версии HTTP/1.0. 401 Unauthorized — Не авторизован. Ресурс требует идентификации пользователя. Клиентское приложение запрашивает у пользователя данные для аутентификации ( имя, пароль ) и передает их на сервер в заголовке WWW-Authenticate. Если данные указаны не правильно, будет снова выдан этот-же код статуса. Появился в протоколе версии HTTP/1.0. 402 Payment Required — Необходима оплата. Пока не используется. Появился в протоколе версии HTTP/1.1. 403 Forbidden — Запрещено. Сервер отказал в доступе к запрошенному ресурсу ввиду ограничений. Ограничения могут быть любыми, установленными администратором сервера, или определенным веб приложением. Например, в целях безопасности, закрыт доступ к файлу, .htacces или .htpasswd или к закрытой директории сайта, или в случае, когда аутентификация должна производится через веб приложение ( например сайтовый движок ), ну или блокировка по IP адресу, в случае слишком частых обращений. Появился в протоколе версии HTTP/1.0. 404 Not Found — Не найдено. Сервер не нашел запрошенный ресурс по указанному адресу. Кроме того данный код ответа можно использовать вместо 403, с целью, скрыть расположение документа, доступ к которому запрещен. Появился в протоколе версии HTTP/1.0. 405 Method Not Allowed — Метод не поддерживается. Клиент попытался использовать метод, недопустимый для данного ресурса. Сервер передает в заголовке, строку Allow, содержащую список допустимых методов. Появился в протоколе версии HTTP/1.1. 406 Not Acceptable — Не приемлемо. Запрошенный ресурс, не удовлетворяет, запрошенные характеристики. В случае, если запрос был сделан не методом HEAD, сервер вернет список допустимых характеристик запрошенного ресурса. Появился в протоколе версии HTTP/1.1. 407 Proxy Authentication Required — Необходима прокси авторизация. Данный код статуса, аналогичен коду 401 за исключением того, что аутентификация производится для прокси-сервера. Появился в протоколе версии HTTP/1.1. 408 Request Timeout — Время ожидания истекло. Истек таймаут ожидания передачи данных, между сервером и клиентом. Появился в протоколе версии HTTP/1.1. 409 Conflict — Конфликт. Конфликтная ситуация при обращении к ресурсу. Такое может произойти, например, при попытке одновременного изменения файла, методом PUT, несколькими клиентами. Появился в протоколе версииHTTP/1.1. 410 Gone — Удалён. Данный ответ выдается в случае, если документ был по указанному URI, но в данный момент удален. Появился в протоколе версии HTTP/1.1. 411 Length Required — Необходима длина. Этот код статуса говорит о том, что для данного URI, в заголовке запроса, должно быть указано значение в поле Content-Length. Появился в протоколе версии HTTP/1.1. 412 Precondition Failed — Условие «ложно. Данный код выдается в случае, если ни одно из условных полей заголовка не было удовлетворено. Появился в протоколе версии HTTP/1.1. 413 Request Entity Too Large — Запрошены слишком большие данные. Данный код выдается, если сервер по каким-либо причинам, не может передать, требуемый объем данных. Если это временная проблема, сервер может указать время, по истечении которого можно будет попробовать повторно запросить ресурс, в строке заголовка, Retry-After. Появился в протоколе версии HTTP/1.1. 414 Request-URI Too Long — Запрашиваемый URI слишком длинный. Слишком длинная строка запроса. Такая ситуация может произойти, например в случае попытки, передать данные методом GET, вместо использования POST. Появился в протоколе версии HTTP/1.1. 415 Unsupported Media Type — Неподдерживаемый тип данных. Сервер, по какой-то причине, отказался обрабатывать запрошенные данные, используемым методом. Появился в протоколе версии HTTP/1.1. 416 Requested Range Not Satisfiable — Запрашиваемый диапазон не достижим. В строке заголовка запроса Range, установлен диапазон, выходящий за рамки запрошенного ресурса и отсутствует строка If-Range. Появился в протоколе версии HTTP/1.1. 417 Expectation Failed — Ожидаемое не приемлемо. Сервер не может обработать строку заголовка запроса Expect. Появился в протоколе версии HTTP/1.1. 422 Unprocessable Entity — Необрабатываемый экземпляр. Запрос принят, тип данных может быть обработан, синтаксис XML данных в теле запроса верен, но имеет место логическая ошибка, не позволяющая обработать запрос к ресурсу. Используется в протоколеWebDAV. 423 Locked — Заблокировано. Запрошенный ресурс заблокирован от данного метода. Используется в протоколе WebDAV. 424 Failed Dependency — Невыполненная зависимость. Выполнение запроса, может зависеть от результата выполнения, какой-либо другой операции, при невыполнении данного условия, будет выдан этот код статуса. Используется в протоколе WebDAV. 425 Unordered Collection — Беспорядочный набор. Этот код статуса будет выдан в случае, если клиент отправил запрос обозначив положение в неотсортированной коллекции или используя порядок следования элементов отличный от серверного. Введено в черновике по WebDAV Advanced Collections Protocol. 426 Upgrade Required — Требуется обновление. Указание сервера, клиенту, обновить протокол. Заголовок ответа, должен содержать правильно составленные поля Upgrade и Connection. Введено в RFC 2817 для возможности перехода к TLS посредствомHTTP. 449 Retry With — Повторить с… Выдается в случае поступления не достаточного количества информации для обработки запроса. В заголовок ответа сервера, помещается строка Ms-Echo-Request. Введено корпорацией Microsoft дляWebDAV.
5xx: Server Error — Ошибка на стороне сервера
Коды данной категории, предназначены для ситуаций, когда обработка запроса не возможна по вине сервера. Во всех случаях, кроме использования метода HEAD, сервер должен включать в тело ответа, объяснение для пользователя.
500 Internal Server Error — Внутренняя ошибка сервера. Любая внутренняя ошибка на стороне сервера не подпадающая под остальные ошибки из категории 5хх. Появился в протоколе версии HTTP/1.0. 501 Not Implemented — Не реализовано. Сервер не поддерживает, необходимых для обработки запроса, возможностей. ( например не поддерживается необходимый метод обработки ). Появился в протоколе версии HTTP/1.0. 502 Bad Gateway — Плохой шлюз. Сервер, работающий в качестве прокси или шлюза, получил сообщение о неудачное в промежуточной операции. Появился в протоколе версии HTTP/1.0. 503 Service Unavailable — Сервис недоступен. Сервер не в состоянии обрабатывать запросы клиентов по техническим причинам. Появился в протоколе версии HTTP/1.0. 504 Gateway Timeout — Истек таймаут ожидания ответа шлюза. Проксирующий сервер или шлюз, не дождался ответа от вышестоящего сервера для завершения обработки запроса. Появился в протоколе версии HTTP/1.0. 505 HTTP Version Not Supported — Версия HTTP протокола не поддерживается. Сервер не поддерживает, или не может обработать, указанную в заголовке версию HTTP протокола. Появился в протоколе версии HTTP/1.0. 506 Variant Also Negotiates — Вариант тоже согласован. Из-за не верной конфигурации, выбранный вариант указывает сам на себя, в следствии чего, связывание прерывается. Добавлено в RFC 2295 для дополнения протокола HTTP технологией Transparent Content Negotiation. 507 Insufficient Storage — Переполнение хранилища. Недостаточно места для обработки текущего запроса. Возможно временная проблема. Используется в протоколе WebDAV. 509 Bandwidth Limit Exceeded — Пропускная возможность канала исчерпана. Данный код статуса, используется в случае превышения веб площадкой, отведенного ей лимита, на потребляемый трафик. Данный код не описан ни одним RFC и используется только модулем bw/limited, панели веб-хостинга cPanel. 510 Not Extended — Нет расширения. У сервера отсутствует расширение, которое пытается использовать клиентом. Сервер может передавать информацию, об имеющихся у него расширениях. Введено в RFC 2774 для дополнения протокола HTTPподдержкой расширений.
Методы обработки запросов HTTP
HTTP метод — это основная операция, которую необходимо выполнить над ресурсом. В названии могут использоваться любые символы, кроме управляющих последовательностей и разделителей, как правило это короткое слово на английском языке. Имена методов HTTP зависимы от регистра.
Любой веб сервер обязан работать, по крайней мере с двумя методами GET и HEAD. Если сервер не смог определить метод, указанный в заголовке запроса клиента, он должен вернуть код статуса 501 (Not Implemented), если-же метод серверу известен, но неприменим к данному ресурсу, будет возвращен код статуса 405 (Method Not Allowed). Как в первом, так и во втором случае, сервер должен включить в свой ответ, заголовок Allow со списком методов, которые он поддерживает.
Метод OPTIONS
Данный метод используется для выяснения поддерживаемых веб-сервером возможностей или параметров соединения с конкретным ресурсом. Сервер включает в ответный запрос заголовок Allow, со списком поддерживаемых методов и возможно информацию о поддерживаемых расширениях. Тело запроса клиента, содержит информацию об интересующих его данных, но на данном этапе формат тела и порядок работы с ним, не определен, пока, сервер должен его игнорировать. С ответным запросом сервера, происходит аналогичная ситуация.
Что-бы выяснить возможности сервера, клиент должен указать в запросе URI, символ — «*«, то есть данный запрос к серверу выглядит как: OPTIONS * HTTP/1.1. Кроме прочего, данный запрос может быть использован для проверки работоспособности сервера и поддержки им протокола HTTP, версии 1.1. Результаты данного запроса не кэшируются.
Метод GET
Метод GET, применяется для запроса конкретного ресурса. Так-же с помощью GET, может быть инициирован некий процесс, при этом, в тело ответа, включается информация о ходе выполнения инициированного запросом действия.
Параметры для выполнения запроса, передаются в URI запрашиваемого ресурса, после символа «?«. Запрос в таком случае выглядит примерно так: GET /some/resource?param1=val1¶m2=val2 HTTP/1.1.
Как установлено в стандарте HTTP, запросы методом GET, являются идемпотентными, то есть, повторная отправка одного и того-же запроса, методом GET, должна приводить к одному и тому-же результату, в случае, если сам ресурс, в промежутках между запросами, изменен не был, что позволяет кэшировать результаты, выдаваемые на запрос методом GET.
Кроме вышесказанного, существуют еще два вида метода GET, это:
условный GET, содержащий заголовки If-Modified-Since, If-Match, If-Range и им подобные,
Частичный GET, содержащий заголовок Range с указанием байтового диапазона данных, которые сервер должен отдать. Данный вид запроса используется для докачки и организации многопоточных закачек.
Порядок работы с этими подвидами запроса GET, стандартами определен отдельно.
Метод HEAD
Данный метод, аналогичен методу GET, с той лишь разницей, что сервер не отправляет тело ответа. Метод HEAD, как правило используется для получения метаданных ресурса, проверки URL ( есть-ли указанный ресурс на самом деле ) и для выяснения факта изменения ресурса с момента последнего обращения к нему.
Заголовки ответа могут быть закэшированы, при несоответствии метаданных и информации в кэше, копия ресурса помечается как устаревшая.
Метод POST
Метод POST, используется для передачи пользовательских данных на сервер, указанному ресурсу. Примером может послужить HTML форма с указанным атрибутом Method=»POST», для отправки комментария к статье. После заполнения необходимых полей формы, пользователь жмет кнопку «Отправить» и данные, методом POST, передаются серверному сценарию, который в свою очередь выводит их на странице комментариев. Таким-же образом, с помощью метода POST, можно передавать файлы.
В отличии от GET, метод POST, не является идемпотентным, то есть неоднократное повторение запроса POST, может выдавать разные результаты. В нашем случае, будет появляться новая копия комментария при каждом запросе.
Если в результате запроса методом POST, возвращается код 200 (Ok) или 204 (No Content), в тело ответа сервера, добавляется сообщение о результате выполнения запроса. Например, если был создан ресурс, сервер вернет 201 (Created), указав при этом URI созданного ресурса в заголовке Location.
Ответы сервера, на выполнение метода 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, клиент может увидеть, какие изменения были сделаны в запросе, промежуточными серверами.
Метод LINK
Связывает указанный ресурс с другим ресурсом.
Источник
SHAURMAN
16.11.18
✎
17:30
Народ всем привет, пишу http сервис для двух баз 1с. Делаю запрос из клиента на сервер получаю ошибку 405. А если этот же запрос пишу в Postman, то все прекрасно возвращает.
В результате должен быть xml файл. В Postman приходит, а в 1с пишет ошибку.
Куда копать? Подскажите, пожалуйста.
Numerus Mikhail
16.11.18
✎
17:31
Проверяй хэдеры
SHAURMAN
16.11.18
✎
17:35
Все один в один что в 1с, что в postman
Ёпрст
16.11.18
✎
17:39
какой метод то хоть в 1с-ине используешь ?
SHAURMAN
16.11.18
✎
17:39
POST
Ёпрст
16.11.18
✎
17:41
(4) ОтправитьДляОбработки используешь ?
Ёпрст
16.11.18
✎
17:42
Какие заголовки ставишь ?
Ёпрст
16.11.18
✎
17:42
покажи код
Вафель
16.11.18
✎
17:43
BOM наверняка
SHAURMAN
16.11.18
✎
17:49
Вафель
16.11.18
✎
17:50
(9) как файл заполняешь?
SHAURMAN
16.11.18
✎
17:52
<?xml version=»1.0″ encoding=»UTF-8″?>
<v8msg:Message xmlns:v8msg=»http://v8.1c.ru/messages»>;
<v8msg:Header>
<v8msg:ExchangePlan>ПланОбмена</v8msg:ExchangePlan>
<v8msg:To>002</v8msg:To>
<v8msg:From>001</v8msg:From>
<v8msg:MessageNo>75</v8msg:MessageNo>
<v8msg:ReceivedNo>0</v8msg:ReceivedNo>
</v8msg:Header>
<v8msg:Body/>
</v8msg:Message>
SHAURMAN
16.11.18
✎
17:53
Просто XML формируется
Вафель
16.11.18
✎
17:56
(12) гугли про (8)
Ёпрст
16.11.18
✎
17:59
(9) дык ты свои заголовки никому же не устанавливаешь
SHAURMAN
16.11.18
✎
18:24
Ответ = Новый HTTPСервисОтвет(200);
Возврат Ответ;
Оставил вот так все равно 405 появляется
Fram
16.11.18
✎
19:09
(9) user-agent добавь. или как там его
palsergeich
16.11.18
✎
19:24
(16) 1) ПолучитьТелоКакСтроку() в ответе, как правило там детальное описание того что сломалось.
2) BOM — стоит проверить.
3) ребутнуть сервер приложений и web сервис, разок было такое плевался различными 4xx ошибками сервис, перезагрузил и полетело.
Содержание
- “1C:Link” tunnel is closed!
- Туннель “1С: Линк” закрыт!
- В результате POST запроса КодСостояния=405
- Ошибка сервера 405 Method Not Allowed: что за ошибка и как ее исправить
- Что означает код ошибки сервера 405?
- Из-за чего я вижу эту ошибку?
- Как исправить 405 Method Not Allowed?
- Что может сделать пользователь?
- Заново открыть ту же страницу
- Проверить, правильно ли он ввел URL-адрес
- Что может сделать владелец сайта?
- Проверить настройки сервера
- Исправить проблемы, связанные с PHP-скриптами
- Исправить эксклюзивные для Nginx ошибки
- Проанализировать все недавние изменения в коде
- Удалить сторонние дополнения для CMS
- Откатиться на более старую версию CMS
- Проверить новые записи в базе данных
- Ошибка 405 или 500 в HTTP сервисе 1С
- Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.
- Ошибка 405
- Ошибка 500
- Расследование ошибок 405 и 500 в HTTP сервисе 1С
- Итог разбора ошибок 405 и 500 в HTTP сервисе 1С.
- Обновление 12.01.2019
“1C:Link” tunnel is closed!
Please ensure that:
- you have active «1C:ITS» support contract;
- your products are registered at ITS Portal;
- PC with «1C:Link» agent is powered on;
- Agent is installed to the path with ASCII characters only;
- Agent setup is complete (auth. keys are installed and tunnel is opened);
- Antivirus or firewall are not blocking Agent components.
Try to reboot PC with «1C:Link» Agent, temporarily disable antivirus & firewall, reinstall Agent via User’s manual.
If it didn’t help, please contact us via support@1c.link and provide:
- link-agent.log file;
- type of published infobases (file-based, client-server);
- «System information» diagnostic file about PC with «1C:Link» agent.
Проверьте, что:
- у вас не закончился договор сопровождения “1С: ИТС”;
- ваши программные продукты зарегистрированы на портале Информационно-технологического сопровождения;
- компьютер с Агентом “1С: Линк” включен;
- Агент запущен из папки, в полном пути которой не содержится кириллических символов;
- в Агенте установлены ключи авторизации и открыт туннель;
- антивирус или брандмауэр не блокируют запуск компонентов Агента.
Попробуйте перезагрузить компьютер с линк-агентом, временно отключите антивирус и брандмауэр, переустановите Агент согласно руководству пользователя.
Источник
В результате POST запроса КодСостояния=405
Комрады! Направьте в нужную сторону с POST запросом к API с авторизацией по ключу.
Исходные данные: https://ekfgroup.com/podderzhka/download раздел «API для партнеров»
APIKey = ПолученныйПоEmailКлюч;
Соединение = Новый HTTPСоединение(«ekfgroup.com». Новый ЗащищенноеСоединениеOpenSSL());
Заголовки = Новый Соответствие;
Заголовки.Вставить(«Authorization», «Bearer «+APIKey);
Заголовки.Вставить(«Accept-Language», «ru»);
Заголовки.Вставить(«Accept-Charset», «utf-8»);
Заголовки.Вставить(«Content-Language», «ru»);
Заголовки.Вставить(«Content-Charset», «utf-8»);
Заголовки.Вставить(«Content-type», «application/x-www-form-urlencoded; charset=utf-8»);
Запрос = Новый HTTPЗапрос(«/api/1/ekf/catalog/files», Заголовки);
Запрос.УстановитьТелоИзСтроки(«vendorCode=mcb4763-1-01C-pro»,КодировкаТекста.UTF8);
Результат = Соединение.ОтправитьДляОбработки(Запрос);
Соответственно, Результат.КодСостояния = 405, данные не загружаются.
Как победить?
(5) 405: Method Not Allowed
Выполнение метода, определенного в запросе, не разрешено для ресурса, идентифицированного конкретным адресом. Ответ должен содержать Allow заголовок, со списком разрешенных методов для запрашиваемого ресурса.
Не к тому ресурсу обращаюсь раз поддерживается только GET, HEAD?
Источник
Ошибка сервера 405 Method Not Allowed: что за ошибка и как ее исправить
Когда на сайт пытается попасть человек, а вместо искомого контента натыкается на ошибку, то важно выяснить, что это за ошибка и почему она посмела явиться в столь неподходящий (а это любой) момент.
Благо у нас есть замечательные коды 4хх и 5хх, хоть и не так подробно, как хотелось бы, но рассказывающие о том, почему возникла ошибка. Ну а мы, зная эту информацию, можем попытаться ошибку исправить.
В этом материале речь пойдет об ошибке 405 Method Not Allowed. В деталях опишу проблему и расскажу, как ее побороть.
Что означает код ошибки сервера 405?
Код 405 Method Not Allowed говорит нам о том, что сервер получил определенный запрос с заданным HTTP-методом, смог его распознать, но не дает добро на его реализацию. То есть пользователь не получит доступ к контенту, который запросил.
В отличие от 404, 405 уточняет, что запрашиваемая страница существует и функционирует. Только вот стоит изменить используемый в HTTP-запросе метод. Иначе ничего не выйдет.
Из-за чего я вижу эту ошибку?
Есть 9 HTTP-методов, которые используются браузерами для общения с серверами. Из них два задействуются чаще остальных. Это метод GET для запроса информации с ресурса и метод POST для передачи какой-нибудь информации на ресурс. Два метода покрывают почти все существующие сценарии взаимодействия клиента и сервера от запроса статьи до отправки логина и пароля на сайт. Так как они выполняют разные задачи, для сервера нет никакой нужды принимать GET для авторизации на сайте или POST для загрузки данных. Если же клиент так делает и отправляет некорректный запрос (не с тем методом, который должен быть), то сервер ответит ему ошибкой. То же произойдет, если ресурс будет настроен так, что не сможет принимать специфичный набор запросов, не попадающих в «стандарт». Такие дела.
Как исправить 405 Method Not Allowed?
Ок, небольшой ликбез провел, теперь расскажу о том, что можно предпринять, чтобы исправить обнаруженную ошибку и вернуть посетителям доступ к сайту.
Что может сделать пользователь?
Ошибка Method Not Allowed под номером 4хх вроде бы говорит о вине клиента. Но несмотря на это, пользователь мало что может сделать, чтобы устранить проблему. В его компетенции только убедиться в том, что он не допустил ошибку в базовых вещах, и попробовать повторить те же действия в надежде на успех.
Заново открыть ту же страницу
Иногда 405 Method Not Allowed может исчезнуть после перезагрузки страницы. Так что перед тем как принимать сложные решения и жаловаться на владельцев сайта, нажмите F5 или Cmd + R раза два.
Проверить, правильно ли он ввел URL-адрес
Несложная задача, но полезная. Как и в случае с кучей других ошибок, 405 может явиться из-за банальной опечатки или лишнего символа. К тому же многие серверы защищены таким образом, чтобы напрочь блокировать доступ к несуществующим страницам или каким-либо подуровням (в которые человек может пытаться залезть неслучайно).
Так что пользователю стоит заглянуть в адресную строку браузера и убедиться в корректности введенной ссылки. Если что-то нет так, то лучше открыть главную страницу сайта и искать нужную информацию там, а не пытаться попасть на нее, вводя адрес вручную.
Что может сделать владелец сайта?
Как это часто бывает, у сервера гораздо больше способов исправить клиентскую ошибку. Тут реально целый ворох решений: от удаления подозрительных компонентов из CMS до редактирования конфигурационных файлов.
Проверить настройки сервера
Тут будут инструкции для владельцев сайтов на базе Apache и Nginx в Timeweb. Понятно, что есть другие варианты конфигураций, но эти два — чуть ли стандарт, использующийся повсеместно. А информация, касающаяся конкретно Timeweb, заденет только расположение файлов и работу с панелью управления хостинга. Остальные моменты универсальны.
Инструкция для пользователей Apache
Наша задача состоит в том, чтобы в файле .htaccess найти записи, которые могут провоцировать появление ошибки 405. А потом их закомментировать или удалить. Чтобы это сделать:
- Открываем панель управления Timeweb.
- Ищем внутри вкладку «Файловая система» и переходим на нее.
- Открываем файл .htaccess.
- Внутри .htaccess ищем директивы Rewrite… (обычно это RewriteEngine, RewriteCond и RewriteRule).
Эти директивы помогают в настройке переадресации и некоторых других аспектах поведения сервера. Например, чтобы заставить сервер отправлять клиенту ошибку на каждый запрос GET, можно ввести такой код:
За появление ошибки отвечает запись [R=405,L]. То есть в настройках указано, как себя будет вести сервер при определенном запросе. Надо найти все такие директивы и закомментировать их, поставив # перед записью.
Инструкция для пользователей Nginx
Здесь нужно сделать примерно то же. Разница в том, как выглядит файл с настройками и в его расположении.
- Ищем файл nginx.conf по пути /usr/local/nginx/conf или /usr/local/etc/nginx .
- Открываем его любым текстовым редактором.
- Находим код, включающий в себя упоминание ошибки 405.
В Nginx код выглядит немного сложнее. Например, запрос метода для ссылки https://moysait.com/ru/services/create будет выглядеть так:
Делаем ту же процедуру. Останавливаемся везде, где находим директиву с ошибкой 405. Анализируем ее (вдруг, она тут случайно). И при необходимости комментируем или удаляем.
Исправить проблемы, связанные с PHP-скриптами
Ошибки могут возникнуть при попытке импортировать или экспортировать слишком объемную базу данных. На хостинге может быть установлено ограничение в полминуты, запрещающее использовать один PHP-скрипт дольше этого времени. Поэтому, если процесс затянется, сервер может отозваться ошибкой 405.
Обойти ограничение можно тремя путями:
- Попробовать экспортировать БД через phpMyAdmin.
- Разбить файл БД на несколько мелких частей, передача каждого из которых займет меньше 30 секунд.
- Использовать для передачи БД Cron-задачу. На них сервер выделяет больше времени.
Еще специалисты рекомендуют удалить статические файлы с разрешением, которые Nginx обрабатывать не должен. Это делается через панель управления хостингом в соответствующем разделе файлового менеджера.
Исправить эксклюзивные для Nginx ошибки
Как мы уже выяснили выше, ошибка может возникнуть при попытке использовать неподходящий метод. Вот как можно исправить это в случае с Nginx-сервером.
Первый вариант — убедить сервер в том, что вместо кода 405 надо отправлять код 200, и это вполне нормально:
Для тех, у кого Nginx-сервер — это proxy, понадобится вот такой код:
Аналогичная ошибка возникает при работе с модулем FastCGI. Из-за него сервер неправильно считывает запросы с методом POST, поэтому необходимо делить параметры и адрес скрипта вот так:
Далее речь пойдет об общих методах диагностики и исправления ошибок. На крайний случай, если конкретные решения не помогли.
Проанализировать все недавние изменения в коде
Если недавно что-то поменяли, а после этого все сломалось, то надо это «поменяли» рассмотреть подробнее. Провести ручной дебаггинг, если можно это так назвать. Наверняка где-то затесалась несерьезная, но обидная ошибка.
Удалить сторонние дополнения для CMS
Если вы используете условный WordPress, то разного рода ошибки могут подкрасться оттуда, где их не ждешь. Например, после установки нового расширения.
Так что при подозрении на наличие сбойного дополнения, лучше попробовать от него избавиться и посмотреть, что будет. Возможно, ошибка исчезнет.
После этого уже можно будет поискать альтернативное расширение или пообщаться с разработчиками по поводу того, почему вообще возникает сбой.
Главное, не забудьте сделать резервную копию CMS перед тем, как что-то удалять и менять. И продолжайте делать бэкапы после, чтобы всегда можно было восстановить рабочую версию сайта.
Откатиться на более старую версию CMS
Бывает так, что сама CMS несет в себе баги и ошибки. Ну или криво установилась. В таком случае можно восстановиться из старой резервной копии и откатиться на одну или несколько версий в прошлое. Когда все работало без ошибок.
Проверить новые записи в базе данных
Расширения могут вносить изменения в базу данных сайта. Иногда не очень полезные. Надо проверить, не появилось ли после установки свежего дополнения каких-либо непрошенных изменений в базе данных. Может, появились подозрительные записи, которых не должно быть. Лучше подвергнуть анализу всю БД от начала до конца (если другие методы исправления ошибки 405 не помогли, конечно).
На этом будем заканчивать. Мы и так уже перешли на самые маловероятные способы исправления этой ошибки. Надеюсь, они не понадобятся, но знать о таких вариантах стоит. Вдруг эти знания когда-нибудь спасут вас и посетителей вашего сайта.
Источник
Ошибка 405 или 500 в HTTP сервисе 1С
Ошибка 405 и 500 в HTTP сервисе 1С. Поиск и устранение.
Добрый день, хотел поделиться с вами результатом преодоления этих ошибок при работе с http сервисами 1С. С данной ошибкой мне пришлось столкнуться при переписывании мобильного приложения с web сервисов на http. Ошибка возникала при отправке http сервису POST запроса.
Ошибка 405
При работе с некорректным HTTP сервисом из мобильного приложения возвращалась ошибка 405, которая указывает на конкретную проблему. «405 Method Not Allowed — указанный клиентом метод нельзя применить к текущему ресурсу.» Долго не мог разобраться с данной ошибкой, так как в сервисе запрос был разрешен и шаблоны были настроены корректно.
Ошибка 500
При работе с некорректным HTTP сервисом из внешних программ возвращалась ошибка 500, которая ни о чем конкретном не говорит. «500 Internal Server Error — любая внутренняя ошибка сервера, которая не входит в рамки остальных ошибок класса».
Вроде HTTP сервис один, а при использовании запросов к нему из разных программ возвращались разные ошибки.
Расследование ошибок 405 и 500 в HTTP сервисе 1С
Времени на выяснение причин ушло очень много. За несколько дней до этой задачи мною были проведены десятки экспериментов по сборке и настройке web сервера apache 2.4 x64 SSL для работы с 1С. Все настройки в основном были связаны с кросс доменными запросами из web приложения на javascript. Столкнувшись с ошибками 405 и 500 на другом проекте я сразу полез в дебри конфигурации apache. После полного удаления apache поставил IIS и на нем вышла такая же ошибка. Поднял на виртуальной машине чистую систему, попробовал apache и iss, но ошибка так и проявлялась. Потом я вспомнил, что одна функция мобильного приложения уже давно использует http сервис и там все прекрасно работает. Создал http сервис с базовыми настройками и все заработало.
Как только я переносил код из web сервиса в функции http сервиса, сразу появлялись ошибки. Самое интересное, что отладка не срабатывала, т.е. POST запрос в пустую функцию приходил и отрабатывал, а в функцию с кодом нет.
На многих форумах ошибку 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% результат.
Если у вас остались вопросы, то вы можете задать мне их в социальных сетях или оставить комментарий ниже.
Источник
Когда на сайт пытается попасть человек, а вместо искомого контента натыкается на ошибку, то важно выяснить, что это за ошибка и почему она посмела явиться в столь неподходящий (а это любой) момент.
Благо у нас есть замечательные коды 4хх и 5хх, хоть и не так подробно, как хотелось бы, но рассказывающие о том, почему возникла ошибка. Ну а мы, зная эту информацию, можем попытаться ошибку исправить.
В этом материале речь пойдет об ошибке 405 Method Not Allowed. В деталях опишу проблему и расскажу, как ее побороть.
Что означает код ошибки сервера 405?
Код 405 Method Not Allowed говорит нам о том, что сервер получил определенный запрос с заданным HTTP-методом, смог его распознать, но не дает добро на его реализацию. То есть пользователь не получит доступ к контенту, который запросил.
В отличие от 404, 405 уточняет, что запрашиваемая страница существует и функционирует. Только вот стоит изменить используемый в HTTP-запросе метод. Иначе ничего не выйдет.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Из-за чего я вижу эту ошибку?
Есть 9 HTTP-методов, которые используются браузерами для общения с серверами. Из них два задействуются чаще остальных. Это метод GET для запроса информации с ресурса и метод POST для передачи какой-нибудь информации на ресурс. Два метода покрывают почти все существующие сценарии взаимодействия клиента и сервера от запроса статьи до отправки логина и пароля на сайт. Так как они выполняют разные задачи, для сервера нет никакой нужды принимать GET для авторизации на сайте или POST для загрузки данных. Если же клиент так делает и отправляет некорректный запрос (не с тем методом, который должен быть), то сервер ответит ему ошибкой. То же произойдет, если ресурс будет настроен так, что не сможет принимать специфичный набор запросов, не попадающих в «стандарт». Такие дела.
Как исправить 405 Method Not Allowed?
Ок, небольшой ликбез провел, теперь расскажу о том, что можно предпринять, чтобы исправить обнаруженную ошибку и вернуть посетителям доступ к сайту.
Что может сделать пользователь?
Ошибка Method Not Allowed под номером 4хх вроде бы говорит о вине клиента. Но несмотря на это, пользователь мало что может сделать, чтобы устранить проблему. В его компетенции только убедиться в том, что он не допустил ошибку в базовых вещах, и попробовать повторить те же действия в надежде на успех.
Заново открыть ту же страницу
Иногда 405 Method Not Allowed может исчезнуть после перезагрузки страницы. Так что перед тем как принимать сложные решения и жаловаться на владельцев сайта, нажмите F5 или Cmd + R раза два.
Проверить, правильно ли он ввел URL-адрес
Несложная задача, но полезная. Как и в случае с кучей других ошибок, 405 может явиться из-за банальной опечатки или лишнего символа. К тому же многие серверы защищены таким образом, чтобы напрочь блокировать доступ к несуществующим страницам или каким-либо подуровням (в которые человек может пытаться залезть неслучайно).
Так что пользователю стоит заглянуть в адресную строку браузера и убедиться в корректности введенной ссылки. Если что-то нет так, то лучше открыть главную страницу сайта и искать нужную информацию там, а не пытаться попасть на нее, вводя адрес вручную.
Что может сделать владелец сайта?
Как это часто бывает, у сервера гораздо больше способов исправить клиентскую ошибку. Тут реально целый ворох решений: от удаления подозрительных компонентов из CMS до редактирования конфигурационных файлов.
Проверить настройки сервера
Тут будут инструкции для владельцев сайтов на базе Apache и Nginx в Timeweb. Понятно, что есть другие варианты конфигураций, но эти два — чуть ли стандарт, использующийся повсеместно. А информация, касающаяся конкретно Timeweb, заденет только расположение файлов и работу с панелью управления хостинга. Остальные моменты универсальны.
Инструкция для пользователей Apache
Наша задача состоит в том, чтобы в файле .htaccess найти записи, которые могут провоцировать появление ошибки 405. А потом их закомментировать или удалить. Чтобы это сделать:
- Открываем панель управления Timeweb.
- Ищем внутри вкладку «Файловая система» и переходим на нее.
- Открываем файл .htaccess.
- Внутри .htaccess ищем директивы Rewrite… (обычно это RewriteEngine, RewriteCond и RewriteRule).
Эти директивы помогают в настройке переадресации и некоторых других аспектах поведения сервера. Например, чтобы заставить сервер отправлять клиенту ошибку на каждый запрос GET, можно ввести такой код:
RewriteEngine on RewriteCond %{REQUEST_URI} ^/ru/services/?.$ RewriteCond %{REQUEST_METHOD} =GET RewriteRule ^(.)$ http://timeweb/ru/new$1 [R=405,L]
За появление ошибки отвечает запись [R=405,L]. То есть в настройках указано, как себя будет вести сервер при определенном запросе. Надо найти все такие директивы и закомментировать их, поставив # перед записью.
Инструкция для пользователей Nginx
Здесь нужно сделать примерно то же. Разница в том, как выглядит файл с настройками и в его расположении.
- Ищем файл nginx.conf по пути /usr/local/nginx/conf или /usr/local/etc/nginx.
- Открываем его любым текстовым редактором.
- Находим код, включающий в себя упоминание ошибки 405.
В Nginx код выглядит немного сложнее. Например, запрос метода для ссылки https://moysait.com/ru/services/create будет выглядеть так:
server { listen 80; listen 443 ssl; server_name moysait.com; location /users/create { if ($request_method = POST) { return 405 https://moysait.com/services/create$request_uri; } } }
Делаем ту же процедуру. Останавливаемся везде, где находим директиву с ошибкой 405. Анализируем ее (вдруг, она тут случайно). И при необходимости комментируем или удаляем.
Исправить проблемы, связанные с PHP-скриптами
Ошибки могут возникнуть при попытке импортировать или экспортировать слишком объемную базу данных. На хостинге может быть установлено ограничение в полминуты, запрещающее использовать один PHP-скрипт дольше этого времени. Поэтому, если процесс затянется, сервер может отозваться ошибкой 405.
Обойти ограничение можно тремя путями:
- Попробовать экспортировать БД через phpMyAdmin.
- Разбить файл БД на несколько мелких частей, передача каждого из которых займет меньше 30 секунд.
- Использовать для передачи БД Cron-задачу. На них сервер выделяет больше времени.
Еще специалисты рекомендуют удалить статические файлы с разрешением, которые Nginx обрабатывать не должен. Это делается через панель управления хостингом в соответствующем разделе файлового менеджера.
Исправить эксклюзивные для Nginx ошибки
Как мы уже выяснили выше, ошибка может возникнуть при попытке использовать неподходящий метод. Вот как можно исправить это в случае с Nginx-сервером.
Первый вариант — убедить сервер в том, что вместо кода 405 надо отправлять код 200, и это вполне нормально:
server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 404 /404.html; error_page 403 /403.html; error_page 405 =200 $uri; … }
Для тех, у кого Nginx-сервер — это proxy, понадобится вот такой код:
error_page 405 =200 @405; location @405 { root /htdocs; proxy_pass http://localhost:8080; }
Аналогичная ошибка возникает при работе с модулем FastCGI. Из-за него сервер неправильно считывает запросы с методом POST, поэтому необходимо делить параметры и адрес скрипта вот так:
location ~.php(.*) { fastcgi_pass 127.0.0.1:9000; fastcgi_split_path_info ^(.+.php)(.*)$; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; include /etc/nginx/fastcgi_params; }
Далее речь пойдет об общих методах диагностики и исправления ошибок. На крайний случай, если конкретные решения не помогли.
Проанализировать все недавние изменения в коде
Если недавно что-то поменяли, а после этого все сломалось, то надо это «поменяли» рассмотреть подробнее. Провести ручной дебаггинг, если можно это так назвать. Наверняка где-то затесалась несерьезная, но обидная ошибка.
Удалить сторонние дополнения для CMS
Если вы используете условный WordPress, то разного рода ошибки могут подкрасться оттуда, где их не ждешь. Например, после установки нового расширения.
Так что при подозрении на наличие сбойного дополнения, лучше попробовать от него избавиться и посмотреть, что будет. Возможно, ошибка исчезнет.
После этого уже можно будет поискать альтернативное расширение или пообщаться с разработчиками по поводу того, почему вообще возникает сбой.
Главное, не забудьте сделать резервную копию CMS перед тем, как что-то удалять и менять. И продолжайте делать бэкапы после, чтобы всегда можно было восстановить рабочую версию сайта.
Откатиться на более старую версию CMS
Бывает так, что сама CMS несет в себе баги и ошибки. Ну или криво установилась. В таком случае можно восстановиться из старой резервной копии и откатиться на одну или несколько версий в прошлое. Когда все работало без ошибок.
Проверить новые записи в базе данных
Расширения могут вносить изменения в базу данных сайта. Иногда не очень полезные. Надо проверить, не появилось ли после установки свежего дополнения каких-либо непрошенных изменений в базе данных. Может, появились подозрительные записи, которых не должно быть. Лучше подвергнуть анализу всю БД от начала до конца (если другие методы исправления ошибки 405 не помогли, конечно).
На этом будем заканчивать. Мы и так уже перешли на самые маловероятные способы исправления этой ошибки. Надеюсь, они не понадобятся, но знать о таких вариантах стоит. Вдруг эти знания когда-нибудь спасут вас и посетителей вашего сайта.
Если вы испытываете проблемы с Агентом, возможно, что ваш антивирус блокирует некоторые его функции.
Для разблокировки Агента “1С:Линк” нужно добавить его в “Доверенные программы”, затем перезапустить компьютер. После перезапуска надо снова открыть линк-агент и добавить в «Доверенные программы» NGINX и Apache, а затем в настройках сетевого экрана разрешить входящие и исходящие TCP.
Попробуйте также выключить проверку защищенных соединений в вашем антивирусе: https://support.kaspersky.com/KESWin/11.1.0/ru-RU/175124.htm
Так же проблемы могут возникать в случае, если используется ESET Smart Security — в нем есть встроенный персональный брандмауэр. Переключение брандмауэра с автоматического режима в режим обучения всегда должно помочь.
Для этого требуется открыть антивирус, нажать на клавиатуре клавишу F5 для доступа в дополнительные настройки, выбрать подраздел “Персональный брандмауэр” и изменить режим его работы с автоматического на режим обучения.
Агент “1С:Линк” не запускается
Пришлите, пожалуйста, в службу технической поддержки support@1c.link скриншоты ошибки и файл link-agent-log.txt. Он находится в той же папке, что и link-agent.exe
К письму приложите диагностическую информацию программы “Сведения о системе” о ПК с Агентом “1С:Линк”
Возможно Агент “1С:Линк” находится в папке, где в полном пути присутствуют кириллические символы или ваш антивирус блокирует его запуск.
Для разблокировки Агента нужно добавить его в “Доверенные программы”, затем перезапустить компьютер. После перезапуска надо снова открыть линк-агент и добавить в “Доверенные программы” NGINX, Java и Apache, а затем в настройках сетевого экрана разрешить входящие и исходящие TCP и UDP.
Если в трее появился значок — значит Агент запустился. Кликните по нему правой кнопкой мыши и выберите пункт “Панель управления”, далее действуйте согласно пунктам руководства пользователя.
Агент “1С:Линк” не запускается с ошибкой “Java was started but returned exit code…”
Данная ошибка возникает в случаях, когда файлы Агента на ПК пользователя повреждены и он пытается запуститься с использованием установленной в системе Oracle Java. Однако Агент “1С:Линк” не должен использовать в своей работе сторонних JAVA. Все необходимое входит в комплект поставки.
Для решения проблемы рекомендуем:
- Полностью удалить Агент Линка с проблемного ПК:
- Остановить Агент Линка (при необходимости снять зависшие процессы nginx.exe и apache.exe через диспетчер задач)
- Удалить папку Агента с диска
- Если JRE от Oracle не нужен для работы других программ — удалить его
- Почистить реестр windows при помощи CCleaner или любой другой подходящей утилиты
- Скачать новый дистрибутив Агента
- Установить Агент на ПК и перевыпустить ключи авторизации
После этого туннель должен будет открыться.
“1С:Линк” работает нестабильно
Возможно, проблемы возникают из-за нестабильного Интернет-соединения.
Для расследования пришлите следующую информацию в службу технической поддержки “1С:Линк” support@1c.link.
Для компьютера с Агентом “1С:Линк”:
- содержимое вкладки “подробная информация” с сайта http://internet.yandex.ru/
- приложите файл link-agent-log
- результат выполнения команды: pathping <имя-туннеля>.1c.link
- приложите диагностическую информацию программы “Сведения о системе”
Для компьютера пользователя:
- содержимое вкладки “подробная информация” с сайта http://internet.yandex.ru/
- результат выполнения команды: pathping <имя-туннеля>.1c.link
- приложите диагностическую информацию программы “Сведения о системе”
Очень медленно работает “1С:Линк”
Данная проблема могла стать следствием невысокой скорости доступа к Интернету или недостаточной мощности ПК с Агентом “1С:Линк”.
Скорость работы через сервис “1С:Линк” напрямую зависит от 2-х факторов:
- Скорость интернет-соединения.
- Производительностью ПК, на котором установлен линк-агент.
Для работы через сервис “1С:Линк” желательно иметь скорость подключения к Интернет не менее 512 kbit/s. Следует учесть, что необходимая скорость напрямую зависит от количества одновременно подключающихся к тоннелю пользователей. Чем их больше, тем шире должен быть исходящий канал на ПК с агентом.
Для большого количества одновременно работающих пользователей необходимо иметь достаточный объем оперативной памяти (не менее 128 МБ на пользователя). Для ускорения формирования сложных отчетов необходим высокоскоростной жесткий диск (например, SSD).
С параметрами для комфортной работы в сервисе вы можете ознакомиться здесь
Нет доступных опций для “1С:Линк” в личном кабинете
Вам необходимо привязать приобретенный программный продукт к вашему аккаунту на сайте portal.1c.ru
Чтобы зарегистрировать программный продукт, вам необходимо сделать следующее:
- Войдите в личный кабинет на портале Информационно-технологического сопровождения со своим логином и паролем от login.1c.ru
- Нажмите кнопку “Зарегистрировать программный продукт”
- Введите все запрашиваемые данные и нажмите кнопку “Далее”
Не удается войти в Панель управления Агентом “1С:Линк”
На локальном компьютере вход в панель управления осуществляется без пароля по двойному клику на иконке Агента “1С:Линк”.
Для доступа в панель управления линк-агента через интернет необходимо ввести логин и пароль вашей учетной записи Windows от компьютера с линк-агентом.
Если проблема останется, попробуйте создать на компьютере учетную запись локального администратора с именем <новоеимя> и паролем <новыйпароль>, а затем укажите эти данные при входе в панель управления линк-агентом.
Если Панель управления не открывается, необходимо сделать следующее:
- Назначить браузер по умолчанию из списка поддерживаемых
- Выполнить следующие действия на ПК с Агентом:
- Откройте Skype и перейдите в пункт меню “Настройки” → “Дополнительно” → “Соединение”
- Снимите галочку “Для дополнительных входящих соединений использовать порты 80 и 443”
- Сохраните сделанные изменения
Ошибка при создании туннеля
Скорее всего Вы используете запрещенный символ в имени туннеля или же оно короче 4-х символов.
Имя туннеля должно состоять из как минимум 4х разрешенных символов. Допускается использование:
- латинских букв без диактрических знаков (a-z)
- цифр (0-9)
- знака дефиса (-)
Ошибка HTTP при обращении к серверу. Удаленный узел не прошел проверку.
Эта ошибка означает, что на компьютере пользователя не установлен или просрочен корневой сертификат сервиса “1С:Линк”.
Переустановите сертификат по инструкции.
Ошибка “Not found any 1C: Enterpise installation with web services”
Пожалуйста, убедитесь, что ваша версия программного продукта не является базовой.
Затем воспользуйтесь инструкцией по установке модулей веб-расширения и перезапустите Агент “1С:Линк”.
Если вы испытываете проблемы с Агентом, возможно, что ваш антивирус блокирует некоторые его функции.
Для разблокировки Агента “1С:Линк” нужно добавить его в “Доверенные программы”, затем перезапустить компьютер. После перезапуска надо снова открыть линк-агент и добавить в «Доверенные программы» NGINX и Apache, а затем в настройках сетевого экрана разрешить входящие и исходящие TCP.
Попробуйте также выключить проверку защищенных соединений в вашем антивирусе: https://support.kaspersky.com/KESWin/11.1.0/ru-RU/175124.htm
Так же проблемы могут возникать в случае, если используется ESET Smart Security — в нем есть встроенный персональный брандмауэр. Переключение брандмауэра с автоматического режима в режим обучения всегда должно помочь.
Для этого требуется открыть антивирус, нажать на клавиатуре клавишу F5 для доступа в дополнительные настройки, выбрать подраздел “Персональный брандмауэр” и изменить режим его работы с автоматического на режим обучения.
Агент “1С:Линк” не запускается
Пришлите, пожалуйста, в службу технической поддержки support@1c.link скриншоты ошибки и файл link-agent-log.txt. Он находится в той же папке, что и link-agent.exe
К письму приложите диагностическую информацию программы “Сведения о системе” о ПК с Агентом “1С:Линк”
Возможно Агент “1С:Линк” находится в папке, где в полном пути присутствуют кириллические символы или ваш антивирус блокирует его запуск.
Для разблокировки Агента нужно добавить его в “Доверенные программы”, затем перезапустить компьютер. После перезапуска надо снова открыть линк-агент и добавить в “Доверенные программы” NGINX, Java и Apache, а затем в настройках сетевого экрана разрешить входящие и исходящие TCP и UDP.
Если в трее появился значок — значит Агент запустился. Кликните по нему правой кнопкой мыши и выберите пункт “Панель управления”, далее действуйте согласно пунктам руководства пользователя.
Агент “1С:Линк” не запускается с ошибкой “Java was started but returned exit code…”
Данная ошибка возникает в случаях, когда файлы Агента на ПК пользователя повреждены и он пытается запуститься с использованием установленной в системе Oracle Java. Однако Агент “1С:Линк” не должен использовать в своей работе сторонних JAVA. Все необходимое входит в комплект поставки.
Для решения проблемы рекомендуем:
- Полностью удалить Агент Линка с проблемного ПК:
- Остановить Агент Линка (при необходимости снять зависшие процессы nginx.exe и apache.exe через диспетчер задач)
- Удалить папку Агента с диска
- Если JRE от Oracle не нужен для работы других программ — удалить его
- Почистить реестр windows при помощи CCleaner или любой другой подходящей утилиты
- Скачать новый дистрибутив Агента
- Установить Агент на ПК и перевыпустить ключи авторизации
После этого туннель должен будет открыться.
“1С:Линк” работает нестабильно
Возможно, проблемы возникают из-за нестабильного Интернет-соединения.
Для расследования пришлите следующую информацию в службу технической поддержки “1С:Линк” support@1c.link.
Для компьютера с Агентом “1С:Линк”:
- содержимое вкладки “подробная информация” с сайта http://internet.yandex.ru/
- приложите файл link-agent-log
- результат выполнения команды: pathping <имя-туннеля>.1c.link
- приложите диагностическую информацию программы “Сведения о системе”
Для компьютера пользователя:
- содержимое вкладки “подробная информация” с сайта http://internet.yandex.ru/
- результат выполнения команды: pathping <имя-туннеля>.1c.link
- приложите диагностическую информацию программы “Сведения о системе”
Очень медленно работает “1С:Линк”
Данная проблема могла стать следствием невысокой скорости доступа к Интернету или недостаточной мощности ПК с Агентом “1С:Линк”.
Скорость работы через сервис “1С:Линк” напрямую зависит от 2-х факторов:
- Скорость интернет-соединения.
- Производительностью ПК, на котором установлен линк-агент.
Для работы через сервис “1С:Линк” желательно иметь скорость подключения к Интернет не менее 512 kbit/s. Следует учесть, что необходимая скорость напрямую зависит от количества одновременно подключающихся к тоннелю пользователей. Чем их больше, тем шире должен быть исходящий канал на ПК с агентом.
Для большого количества одновременно работающих пользователей необходимо иметь достаточный объем оперативной памяти (не менее 128 МБ на пользователя). Для ускорения формирования сложных отчетов необходим высокоскоростной жесткий диск (например, SSD).
С параметрами для комфортной работы в сервисе вы можете ознакомиться здесь
Нет доступных опций для “1С:Линк” в личном кабинете
Вам необходимо привязать приобретенный программный продукт к вашему аккаунту на сайте portal.1c.ru
Чтобы зарегистрировать программный продукт, вам необходимо сделать следующее:
- Войдите в личный кабинет на портале Информационно-технологического сопровождения со своим логином и паролем от login.1c.ru
- Нажмите кнопку “Зарегистрировать программный продукт”
- Введите все запрашиваемые данные и нажмите кнопку “Далее”
Не удается войти в Панель управления Агентом “1С:Линк”
На локальном компьютере вход в панель управления осуществляется без пароля по двойному клику на иконке Агента “1С:Линк”.
Для доступа в панель управления линк-агента через интернет необходимо ввести логин и пароль вашей учетной записи Windows от компьютера с линк-агентом.
Если проблема останется, попробуйте создать на компьютере учетную запись локального администратора с именем <новоеимя> и паролем <новыйпароль>, а затем укажите эти данные при входе в панель управления линк-агентом.
Если Панель управления не открывается, необходимо сделать следующее:
- Назначить браузер по умолчанию из списка поддерживаемых
- Выполнить следующие действия на ПК с Агентом:
- Откройте Skype и перейдите в пункт меню “Настройки” → “Дополнительно” → “Соединение”
- Снимите галочку “Для дополнительных входящих соединений использовать порты 80 и 443”
- Сохраните сделанные изменения
Ошибка при создании туннеля
Скорее всего Вы используете запрещенный символ в имени туннеля или же оно короче 4-х символов.
Имя туннеля должно состоять из как минимум 4х разрешенных символов. Допускается использование:
- латинских букв без диактрических знаков (a-z)
- цифр (0-9)
- знака дефиса (-)
Ошибка HTTP при обращении к серверу. Удаленный узел не прошел проверку.
Эта ошибка означает, что на компьютере пользователя не установлен или просрочен корневой сертификат сервиса “1С:Линк”.
Переустановите сертификат по инструкции.
Ошибка “Not found any 1C: Enterpise installation with web services”
Пожалуйста, убедитесь, что ваша версия программного продукта не является базовой.
Затем воспользуйтесь инструкцией по установке модулей веб-расширения и перезапустите Агент “1С:Линк”.
Перейти к содержанию
На чтение 1 мин Опубликовано Обновлено
Ошибка HTTP 405 — это ответ сервера, который указывает на то, что метод, используемый клиентом для взаимодействия с веб-ресурсом, не поддерживается сервером. Очень часто данная ошибка возникает при работе с HTTP сервисами 1С.
Важно понимать, что ошибка 405 не является неизлечимой проблемой и может быть решена. Для этого необходимо разобраться в причинах ее возникновения и принять соответствующие меры.
Одной из самых распространенных причин возникновения ошибки 405 является неправильное использование метода запроса. Например, если сервер ожидает запросы только методом GET, а клиент отправляет запросы методом POST, сервер будет отвечать ошибкой 405. В таком случае необходимо уточнить требования сервера и правильно настроить метод запроса со стороны клиента.
В данной статье мы рассмотрим различные причины возникновения ошибки 405 при работе с HTTP сервисами 1С и предоставим рекомендации по их решению. Также мы рассмотрим возможные способы правильного использования методов запроса и настройки сервера для избежания данной ошибки.