Коды ошибок http: полный список ошибок сервера
Содержание:
- Симптомы неисправности
- Причины возникновения ошибки 405
- Проверка датчика синхронизации
- Вопрос 2. Как его исправить?
- The 2-Minute Guide to Fixing HTTP Error 405 (Method Not Allowed)
- Признаки ошибки
- Conclusion
- Список кодов состояния HTTP
- Диагностика и решение проблем
- Ошибка 405 что это
- Как диагностировать код P0405?
- Способы устранения: ошибка 405 (Error 405)
- Список ошибок на стороне сервера (5xx)
- Способы устранения (для компьютера)
- Resolve HTTP 405 errors
- Understanding HTTP and Methods
- How to Fix 405 Method Not Allowed Errors
Симптомы неисправности
Основным симптомом появления ошибки P0405 для водителя является подсветка MIL (индикатор неисправности). Также его называют Check engine или просто «горит чек».
Также они могут проявляться как:
- Загорится контрольная лампа «Check engine» на панели управления (код будет записан в память ECM как неисправность).
- Двигатель глохнет либо плохо заводится.
- Плавающие обороты, а также попытки заглохнуть на холостом ходу.
- Двигатель автомобиля может работать неустойчиво.
- Повышенный расход топлива.
- Снижение мощности двигателя.
- Иногда симптомы могут отсутствовать, несмотря на сохраненный код неисправности.
Серьезность этого кода высокая, но если кроме индикации неисправности, другие симптомы отсутствуют, то проблема считается умеренной. Но это не должно становится фактором для не решения проблемы.
Причины возникновения ошибки 405
Одним из самых распространенных источников проблемы является функционирование php-скрипта. Данный инструмент импортирует данные на сайт, но дело в том, что касательно выполнения скрипта существует временное ограничение в 30 секунд. Упомянутая опция устанавливается на хостинге и подобрать оптимальный для себя параметр невозможно. Исходя из этого, формируется и корень ошибки – скрипту недостаточно временных рамок, утвержденных хостингом. В результате этого пользователь может наблюдать ошибку 405. Если проблема возникает из-за приведенной причины, юзеру следует воспользоваться одним из советов.
Советы по решению ошибки 405 в PHP:
- осуществление импорта базы данных с помощью одноименной опции, которую можно найти в подразделе Хостинг в Панели управления;
- детализация файла путем формирования из него нескольких частей, после чего каждую из них передать через скрипт;
- произведение импорта данных при помощи специального инструмента phpmyadmin;
- создание cron-задачи с вводом пути к скрипту. Данная опция позволяет расширить временное ограничение в 10 раз, что в большинстве случаев вполне достаточно для импорта. Функция доступна в подразделе Хостинг, пункт Расписание задач (cron), а нужную информацию следует вводить в поле Задача.
Еще одной распространенной причиной ошибки часто становятся POST-запросы. Сущность проблемы заключается в обработке расширений файлов с помощью инструмента apache. Ряд расширений могут негативно влиять на работу скрипта, поэтому их следует удалить. Внести необходимые изменения нужно в окне Статические файлы. Путь к нему выглядит следующим образом: Хостинг – Мои сайты – Настройка сайта.
Как и во многих других ситуациях, вирусы могут быть причиной возникновения ошибки. Вредоносное программное обеспечение либо повреждает веб-обозреватель, либо полностью захватывает контроль над ним. В дальнейшем браузер может выдавать целый ряд известий о проблемах. Кроме того, удаление или установка системного программного обеспечения может привести к повреждению реестра, который, в свою очередь, инициирует ошибку 405.
Проверка датчика синхронизации
Выключаем зажигание и отсоединяем «минусовую» клемму аккумуляторной батареи.
Тонкой отверткой или шилом снимаем пружинный зажим колодки.
Отсоединяем разъем датчика синхронизации.
Подсоединяем омметр к центральному и одному боковому выводу.
Измеряем сопротивление обмотки датчика, которое должно быть в пределах 700—900 Ом.
Для дальнейшей проверки исправности датчика снимаем его с двигателя.
В работоспособности датчика можно убедиться, подсоединив к его выводам вольтметр
Быстро подносим металлический стержень к сердечнику датчика — если он исправен, на приборе наблюдаются скачки напряжения.
Неисправный датчик заменяем.
Вопрос 2. Как его исправить?
Общая мудрость заключается в удалении WebDAV. Никто не знает, что такое WebDAV, как это может быть проблемой, почему это проблема или почему она существует, если она вызывает проблемы. WebDAV можно удалить как обработчик из пользовательского интерфейса администрирования IIS:
который идентичен для добавления записи из раздела в (сам пользовательский интерфейс добавляет к вам запись в web.config):
Кроме того, это не работает. Итак, как мы это исправим?
Начиная с IIS, похоже, что WebDAV стал еще более вирусом. Вместо того, чтобы просто отключить его как обработчик, вам нужно полностью установить или удалить его как модуль:
Это похоже на идею причины, за исключением моего тестового примера, в IIS 7.5, WebDAV не установлен и удален как модуль:
Итак, если мы сможем выяснить, как решить проблему, мы можем ответить на второй вопрос.
The 2-Minute Guide to Fixing HTTP Error 405 (Method Not Allowed)
In a world hooked on instant gratification, one of the worst things a brand can do is not give their audience what they want. If your website visitors see an error page when they’re looking for help or information to do their jobs better, they could get annoyed and lose trust in your brand, permanently damaging your reputation.
Unfortunately, 405 Method Not Allowed Errors are rather mysterious. They indicate what happened to your website, but they don’t tell you why it happened, making it challenging for you to pinpoint its cause and correct the issue.
To help you fix your 405 Method Not Allowed Error and avoid losing brand trust, we’ve fleshed out exactly what the issue is and its most common solutions.
Признаки ошибки
Как правило, специалисты выделяют несколько наиболее характерных «симптомов» исследуемой неисправности:
- После появления сообщения с указанием одноименной ошибки окно с открытой программой вылетает.
- На экране появляется маленькое диалоговое окно, повествующее об ошибке. Иногда окно закрыть не получается, оно попросту появляется снова и снова.
- Операционная система начала глючить в работе и появились постоянные задержки с реакцией после ввода с клавиатуры или нажатия компьютерной мыши.
- Периодические «зависания» при работе с компьютером.
- Браузер пишет, что не может отобразить содержимое веб-страницы (это касается счастливых обладателей Internet Explorer).
- При скачивании приложений через Wi-Fi из Play Market вылазит ошибку 406.
- Ошибка 406 постоянно появляется на китайских телефонах на базе Андроид.
Но наиболее часто ошибка может возникать во время установки приложений, когда параллельно открыта программа, которая относится к корпорации Google. Также такие ситуации могут возникать при начале или завершении функционирования операционной системы. Более того, пользователь может столкнуться с этой проблемой еще на этапе установки ОС. В итоге не получается обновить никакие приложения, а загрузить новые нет возможности. Если ошибка возникает в браузере, пользователь не может вообще увидеть содержимое нужного ему сайта.
Conclusion
Congratulations for getting this far in the article. I know it may seem like a lot and a little bit overwhelming, but you can easily do everything on this list if you put your mind to it and focus. You definitely learned a lot from it so know you can use these tools and skills if you ever need to. Although this is just one of many errors associated with HTTP, this article should give you some good background knowledge so if you get another HTTP error. Trust me, it will make that process much easier, as it usually is the second time around.
Another common error related to HTTP you may get is Runtime Error 429. This error occurs when you try to access a server too many times within a specific amount of time. If you get this error, read our article on it here to learn how to fix it.
If you have any questions, comments, or concerns, feel free to leave a comment below.
Список кодов состояния HTTP
Код состояния HTTP (англ. HTTP status code) — часть первой строки ответа сервера при запросах по протоколу HTTP. Он представляет собой целое число из трёх десятичных цифр. Первая цифра указывает на класс состояния. За кодом ответа обычно следует отделённая пробелом поясняющая фраза на английском языке, которая разъясняет человеку причину именно такого ответа. Примеры:
- 201 Created.
- 401 Unauthorized.
- 507 Insufficient Storage.
Клиент узнаёт по коду ответа о результатах его запроса и определяет, какие действия ему предпринимать дальше. Набор кодов состояния является стандартом, и они описаны в соответствующих документах RFC. Введение новых кодов должно производиться только после согласования с IETF. Тем не менее известно о двух используемых кодах, не упомянутых в RFC: . Также упоминается пояснительная фраза «Reply With» в спецификации по WebDAV в Microsoft Developer Network, введённый Microsoft и , введённый в cPanel.
Клиент может не знать все коды состояния, но он обязан отреагировать в соответствии с классом кода. В настоящее время выделено пять классов кодов состояния.
Веб-сервер Internet Information Services в своих файлах журналов, кроме стандартных кодов состояния, использует подкоды, записывая их через точку после основного. При этом в ответах от сервера данный подкод не размещается — он нужен администратору сервера, чтобы тот мог более точно определять источники проблем.
Ниже представлен обзорный список всех описанных в данной статье кодов ответа:
Диаграмма принятия веб-сервером решений на основе заголовков
Статистика по кодам ответа, сгенерированная анализатором логов Webalizer
Статистика по кодам ответа, сгенерированная анализатором логов Webalizer
-
(информационные):
- («продолжай»);
- («переключение протоколов»);
- («идёт обработка»).
-
(успешно):
- («хорошо»);
- («создано»);
- («принято»);
- («информация не авторитетна»);
- («нет содержимого»);
- («сбросить содержимое»);
- («частичное содержимое»);
- («многостатусный»);
- («уже сообщалось»);
- («использовано IM»).
-
(перенаправление):
- («множество выборов»);
- («перемещено навсегда»);
- («перемещено временно»);
- («найдено»);
- («смотреть другое»);
- («не изменялось»);
- («использовать прокси»);
- — зарезервировано (код использовался только в ранних спецификациях);
- («временное перенаправление»);
- («постоянное перенаправление»).
-
(ошибка клиента):
- («плохой, неверный запрос»);
- («не авторизован (не представился)»);
- («необходима оплата»);
- («запрещено (не уполномочен)»);
- («не найдено»);
- («метод не поддерживается»);
- («неприемлемо»);
- («необходима аутентификация прокси»);
- («истекло время ожидания»);
- («конфликт»);
- («удалён»);
- («необходима длина»);
- («условие ложно»);
- («полезная нагрузка слишком велика»);
- («URI слишком длинный»);
- («неподдерживаемый тип данных»);
- («диапазон не достижим»);
- («ожидание не удалось»);
- («я — чайник»);
- («обычно ошибка проверки CSRF»);
- ;
- («необрабатываемый экземпляр»);
- («заблокировано»);
- («невыполненная зависимость»);
- («необходимо обновление»);
- («необходимо предусловие»);
- («слишком много запросов»);
- («поля заголовка запроса слишком большие»);
- («повторить с»);
- 451 Unavailable For Legal Reasons («недоступно по юридическим причинам»).
- (клиент закрыл соединение);
-
(ошибка сервера):
- («внутренняя ошибка сервера»);
- («не реализовано»);
- («плохой, ошибочный шлюз»);
- («сервис недоступен»);
- («шлюз не отвечает»);
- («версия HTTP не поддерживается»);
- («вариант тоже проводит согласование»);
- («переполнение хранилища»);
- («обнаружено бесконечное перенаправление»);
- («исчерпана пропускная ширина канала»);
- («не расширено»);
- («требуется сетевая аутентификация»);
- («неизвестная ошибка»);
- («веб-сервер не работает»);
- («соединение не отвечает»);
- («источник недоступен»);
- («время ожидания истекло»);
- («квитирование SSL не удалось»);
- («недействительный сертификат SSL»).
Диагностика и решение проблем
Первым шагом в процессе устранения неполадки P0405, является изучение бюллетеней технического обслуживания (TSB). На предмет известных проблем с конкретным автомобилем.
Шаги расширенной диагностики являются очень специфичными для конкретного автомобиля. Для этого могут потребоваться, специальное оборудование и знания для точного выполнения действий.
Дайте двигателю вашего автомобиля остыть. В большинстве случаев системы рециркуляции выхлопных газов (EGR) очень горячие. Поскольку они обычно устанавливаются непосредственно на выхлопной системе. Поэтому, если вы не дадите двигателю остыть, вы можете получить ожоги.
Осмотрите все вакуумные линии, они плохо переносят большие температуры, а в системе рециркуляции это не редкость. Любую сгоревшую или сломанную вакуумную линию необходимо заменить или отремонтировать.
Линии недорогие, поэтому лучше произвести замену всех линий на новые, особенно если вы обнаружите, что одна из них вышла из строя. Если одна из них имеет сильный износ, скорее всего, другие тоже скоро потребуют замены.
Проверка электрических цепей и соединений
Обязательно тщательно проверьте целостность задействованных жгутов с проводами. Они часто проходят вдоль выхлопной трубы и вокруг нее. Поэтому было бы неплохо перевязать все незакрепленные провода. Если вы обнаружите перегоревший провод, припаяйте соединения и убедитесь в соответствующей изоляции.
Осмотрите соленоид вентиляции на предмет трещин и проникновения воды. Кроме того, убедитесь, что разъемы имеют надлежащее электрическое соединение, а защелки не повреждены и не сломаны.
Если есть возможность с доступом, вы можете снять клапан рециркуляции ОГ, чтобы проверить его состояние. Эти клапаны подвержены значительному налету в виде сажи. Используйте очиститель карбюратора и зубную щетку, чтобы удалить сажу со всех загрязненных участков.
Если наиболее распространенные тесты не помогли решить проблему с ошибкой P0405. Необходимо обратиться к руководству по обслуживанию вашего автомобиля для продолжения проверки электрических цепей.
Ошибка 405 что это
Такая же проблема. Method Not Allowed The requested method POST is not allowed for the URL /zayavka.htm.
Apache/1.3.37 Server at energo-zona.ru Port 80
Модули включены, тариф 201. В чем проблема не подскажите?
Такая же проблема. Method Not Allowed The requested method POST is not allowed for the URL /zayavka.htm.
Apache/1.3.37 Server at energo-zona.ru Port 80
Модули включены, тариф 201. В чем проблема не подскажите?
Такая же проблема Method Not Allowed
The requested method POST is not allowed for the URL /my-form.php. Apache/1.3.37 Server at www.krasn-pol.ru Port 80 Тариф 102. Дело в тарифе, нужно менять?
Method Not Allowed The requested method POST is not allowed for the URL /index.html.
Apache/1.3.42 Server at a-lesorub.ru Port 80
Тариф 202 Модуль php 5.3 включен Использование глобальных переменных GET, POST, Cookie register_globals включено
Подскажите в чем проблема?
Method Not Allowed The requested method POST is not allowed for the URL /index.html.
Apache/1.3.42 Server at a-lesorub.ru Port 80
Тариф 202 Модуль php 5.3 включен
А зачем Вы обращаетесь к index.html методом POST? У Вас в HTML есть встроенный PHP-код?
А зачем Вы обращаетесь к index.html методом POST? У Вас в HTML есть встроенный PHP-код?
Лучше выключить, в 99% случаев это не нужно.
Тогда Вы делаете что-то не то.
Если у Вас в HTML-файле нет кода, который должен выполняться на сервере, то обращаться к нему методом POST не нужно.
вот код прописанный в index.html
php скрипт — contacts.php
Отвечу Вам не как сотрудник RU-CENTER, а просто как веб-разработчик. Проблема — в Вашем коде.
Вы уверены, что в момент выполнения этого кода элемент с id «feedback-form» будет существовать? Думаю, нет Используйте это как наводку на решение. Начать нужно с решения именно этой проблемы.
И да, очень много полезнейшей информации о том, как работает Ваш javascript, что с ним происходит, какие вообще проблемы возникают у браузера при обработке Вашего кода, — всё это можно узнать, используя браузерный отладчик типа firebug для Firefox или любой другой аналогичный (в большинстве браузеров они вообще встроенные).
Как диагностировать код P0405?
Поскольку код P0405 обозначает проблему в электрической цепи, для диагностики потребуется электрическая схема вашей модели автомобиля, а также цифровой мультиметр.
Всегда подключайте автомобильное зарядное устройство
Всякий раз, когда вы ищите неисправности на автомобиле, особенно при включенном зажигании, существует риск разрядки аккумулятора. Более того, при низком напряжении могут появляться дополнительные коды неисправностей, что усложнит поиск. Вот почему всегда необходимо подключать автомобильное зарядное устройство.
Подключите OBD2 сканер
Сканер OBD2 — отличное устройство, которое считывает информацию о кодах неисправностей. В большинстве современных сканеров записаны базовые значения, которые позволяют проверять показания датчиков и сравнивать их, чтобы увидеть, нужен ли ремонт.
Вы можете легко проверить работу рециркуляции отработавших газов с помощью сканера. Можно также использовать мультиметр, но большинство экспертов рекомендуют сканер OBD2.
Проверьте проводку
Наиболее распространенным типом датчиков положения EGR является трехконтактный с опорным напряжением, землёй и сигналом.
Первым шагом является проверка соединений в проводке, поиск повреждений или оплавления, которые могут привести к проблемам в электрической цепи. Убедитесь, что проверили на возможное повреждение водой или перегиб проводов.
Отсоедините ЭБУ (ECM), датчик положения EGR и измерьте сопротивление на трёх проводах. Сопротивление каждого провода: VC, EGLS и E2, должно быть 0 Ом. Кроме того, не должно быть никакого соединения между любым из трёх проводов или с землёй. Вы должны измерить не менее 10 кОм между VC, EGLS, E2 и корпусом.
Проверьте датчик положения ERG
Если клапан рециркуляции отработавших газов приводится в действие вакуумом, проверьте датчик положения с помощью вакуумного насоса и цифрового мультиметра.
Снимите разъём и измерьте полное сопротивление датчика (VC – E2) — показания должны быть около 6 кОм (6000 Ом). На сигнальном проводе (VC – EGLS) — вы должны измерить где-то между 0,1 кОм и 5,5 кОм (от 100 Ω до 5500 Ω), в зависимости от того, какой вакуум вы подаёте.
Электронно-управляемый EGR
Если система рециркуляции отработавших газов приводится в действие электронным способом или вы хотите проверить выходное напряжение, измерьте напряжение на разъёме. Ключ зажигания должен быть включён, двигатель заглушен.
- VC — между 4,5 В и 5,5 В.
- E2 — 0 В.
- ELGS — показания между 0,3 В и 4,2 В, которые могут варьироваться в зависимости от фактического положения клапана.
Что означают полученные измерения
- Если напряжение на E2 составляет 5 В и то же самое на EGLS — это указывает на наличие разомкнутой цепи.
- Если на VC и EGLS 5 В, но 0 В на E2 — это может быть внутреннее или внешнее короткое замыкание. В этом случае проверить сопротивление между VC и EGLS. Если оно меньше 100 Ом, значит в датчике короткое замыкание и его необходимо заменить.
- Если сопротивление составляет от 100 Ом до 5500 Ом — значит короткое замыкание в жгуте проводов.
- Если 0 В на E2 и 4,5 В на EGLS — значит датчик поврежден и нуждается в замене.
Способы устранения: ошибка 405 (Error 405)
Для ликвидации проблемы рекомендуется принятие следующих мер:
- Восстановление записей реестра.
- Запуск сканирования устройство с целью проверки наличия вирусов и вредоносного программного обеспечения.
- Обновление драйверов.
- Применение опции Восстановление системы, чтобы аннулировать последние корректировки.
- Провести все требуемые системой обновления.
- Проверить системные файлы (sfc / scannow).
- Переустановить продукт WOS (Windows Operating System).
- Установить Windows заново.
Одна или несколько из перечисленных операций точно помогут пользователю избавиться от надоедливых уведомлений и запретов. Исходя из упомянутых рекомендаций, можно сделать вывод, что наиболее эффективная профилактика от появления подобных проблем – это поддержка операционной системы в надлежащем функционировании.
Список ошибок на стороне сервера (5xx)
Теперь поговорим об ошибках, которые возникают где-то на сервере. Все они связаны с запросами, которые не удается обработать на том конце. Пользователь зачастую в их появлении не виноват.
500 Internal Server Error
Этот код возникает, когда сервер сталкивается с непредвиденными обстоятельствами. Такими, которые и сам не может пояснить. Как, собственно, и завершить запрос со стороны пользователя. По факту, эта ошибка говорит нам что-то вроде «Я не могу подобрать более подходящий код ошибки, поэтому лови 500 и делай с этим, что хочешь». Мы писали о нем чуть подробнее тут.
Дело не в тебе, дело во мне (С)
501 Not Implemented
501 говорит нам, что функциональность, необходимая для обработки запроса со стороны клиента, попросту не реализована на сервере. Он не сможет корректно обработать используемый метод.
Иногда в теле ошибки еще пишут что-то в духе «Приходите попозже, возможно, в будущем нужная функция появится».
Появляется, когда сервер не может обработать запрос клиента по одной из двух технических причин:
- Слишком много пользователей в текущий момент пытаются отправить запросы, и у сервера не остается ресурсов, чтобы ответить кому-либо еще.
- На сервере ведутся технические работы, временно блокирующие его работу.
Обычно ошибка 503 носит временный характер, и для ее решения достаточно немного подождать.
504 Gateway Timeout
Ошибка похожа на 408. Здесь же прокси-сервер пытается выйти на контакт с вышестоящим сервером, но не успевает это сделать до истечения тайм-аута. Отсюда и ошибка.
505 HTTP Version Not Supported
Этот код похож на 426. Он тоже связан с неподходящей версией протокола HTTP. В этом случае нужно обеспечить и клиента, и сервер единой версией. Она, как правило, указывается в запросе со стороны пользователя.
506 Variant Also Negotiates
Обычно с такой ошибкой сталкиваются только в том случае, если сервер изначально настроен неправильно. То есть это не сиюминутная проблема, а что-то серьезное на уровне базовой конфигурации. Тут придется потрудиться разработчикам. Выявить проблему и разрешить ее.
507 Insufficient Storage
Код 507 встречается в тех ситуациях, когда серверу не хватает пространства в хранилище для обработки запроса со стороны клиента. Проблема решается освобождением места или расширением доступного пространства. Тогда сервер сможет без проблем обработать запрос пользователя.
508 Loop Detected
Таким кодом сервер отзовется в случае, если заметит бесконечный цикл в запросе клиента. Можно расценивать его как провал запроса и выполняемой операции в целом.
510 Not Extended
Появляется, если клиент посылает запрос на использование какого-либо расширения, отсутствующего на сервере. Чтобы исправить проблему, надо убрать декларирование неподдерживаемого расширения из запроса или добавить поддержку на сервер.
511 Network Authentication Required
511 код говорит о том, что перед тем как выйти в сеть, надо авторизоваться (ввести логин и пароль). Можно воспринимать это неким PPPoE подключением, когда от клиента требуются данные для авторизации.
Способы устранения (для компьютера)
Поскольку есть вероятность, что источником проблемы может быть вирус, необходимо проверить компьютер на предмет заражения программным обеспечением подобного содержания. Впрочем, даже если нежеланных гостей удастся обнаружить, то не факт, что их так просто получится ликвидировать. В таком случае рекомендуем обратиться к утилите Emsisoft Anti-Malware. По сравнению с аналогичными инструментами борьбы и защиты от вирусных программ, упомянутое приложение гарантирует полное устранение зараженного ПО. Но будьте готовы, что система полетит к чертям.
Также ключем к разрешению проблемы может стать восстановление определенных записей реестра. Отметим, что в данном вопросе нужна рука мастера, поэтому за неимением соответствующих знаний не стоит брать задание под свой контроль, так как можно сделать только хуже. Впрочем, самостоятельность в этой ситуации можно проявить, заручившись техническими возможностями утилиты WinThruster, которая считается одной из лучших программ для работы с реестром. Есть и наглядная рекомендация для ручных изменений реестра, но к ним советуем прибегать в крайнем случае.
Не лишним станет очистка устройства от временных папок и файлов. В этой ситуации все довольно просто – есть стандартный инструмент для выполнения подобных задач, а есть и ряд качественных и эффективных утилит, которые размещены в свободном доступе. Имеющийся инструмент от операционной системы – это Очистка диска. К сожалению, он не может похвастаться серьезными мощностями, поэтому нередко его возможностей не хватает, чтобы решить проблему. Поэтому советуем еще загрузить дополнительное приложение для этой задачи
В частности, обращаем внимание на программу WinSweeper
Какие программы работают в комплексе?
Чтобы исправить или решить ошибку 406 на компьютере можно использовать следующие программы:
- Антивирус Cureit от Dr. Web — бесплатно, не требует установки в систему.
- CCleaner — программа сама почистит реестр и удалит хлам с компьютера. Обычно помогает.
- Если проблема возникла на базе браузера Internet Explorer — поставьте Opera или Mozilla. Скачать можно на флешку у соседа.
Resolve HTTP 405 errors
There are several reasons why a specific HTTP verb may not be allowed, but there is one primary scenario that is the leading cause of this error in IIS: multiple handlers are defined for the same verb/method, and one of the handlers is blocking the expected handler from processing the request. By way of explanation, IIS processes handlers from first to last based on the order handler entries in the applicationHost.config and web.config files, where the first matching combination of path, verb, resource, etc., will be used to handle the request.
The following example is an excerpt from an applicationHost.config file for an IIS server that was returning an HTTP 405 error when using the PUT method to submit data to a Web API application. In this excerpt, several HTTP handlers are defined, and each handler has a different set of HTTP methods for which it is configured — the last entry in the list is the static content handler, which is the default handler that is used after the other handlers have had a chance to examine the request:
In the preceding example, the WebDAV handler and the Extension-less URL Handler for ASP.NET (which is used for Web API) are clearly defined for separate lists of HTTP methods. Note that the ISAPI DLL handler is configured for all HTTP methods, although this configuration will not necessarily cause an error. However, configuration settings like this need to be considered when troubleshooting HTTP 405 errors.
In the preceding example, the ISAPI DLL handler was not the problem; in fact, the problem was not defined in the applicationHost.config file for the IIS server — the problem was caused by an entry that was made in the web.config file when the Web API application was created in Visual Studio. The following excerpt from the application’s web.config file shows the location of the problem:
In this excerpt, the Extension-less URL Handler for ASP.NET is redefined to include additional HTTP methods that will be used with the Web API application. However, since a similar set of HTTP methods is defined for the WebDAV handler, a conflict occurs. In this specific case, the WebDAV handler is defined and loaded by IIS, even though WebDAV is disabled for the website that includes the Web API application. During the processing of an HTTP PUT request, IIS calls the WebDAV module since it is defined for the PUT verb. When the WebDAV module is called, it checks its configuration and sees that it is disabled, so it will return an HTTP 405 Method Not Allowed error for any request that resembles a WebDAV request. To resolve this issue, you should remove WebDAV from the list of HTTP modules for the website where your Web API application is defined. The following example shows what that might look like:
This scenario is often encountered after an application is published from a development environment to an IIS production environment, and this occurs because the list of handlers/modules is different between your development and production environments. For example, if you are using Visual Studio 2012 or later to develop a Web API application, IIS Express is the default web server for testing. This development web server is a scaled-down version of the full IIS functionality that ships in a server product, and this development web server contains a few changes that were added for development scenarios. For example, the WebDAV module is often installed on a production web server that is running the full version of IIS, although it may not be in use. The development version of IIS, (IIS Express), installs the WebDAV module, but the entries for the WebDAV module are intentionally commented out, so the WebDAV module is never loaded on IIS Express unless you specifically alter your IIS Express configuration settings to add WebDAV functionality to your IIS Express installation. As a result, your web application may work correctly on your development computer, but you may encounter HTTP 405 errors when you publish your Web API application to your production IIS web server.
Understanding HTTP and Methods
HTTP (hypertext transfer protocol) is the format for transferring data for the World Wide Web. HTTP has methods that indicate the action needed to be performed on the server for a particular URL. Each is different.
There are several methods, each with different names and functions.We won’t be going into much detail about them, but it’s still good to have a basic understanding of them. Here are some of the most common methods, so you can get a basic idea of how they work.
- GET: Retrieves the information identified by the URL resource. From the information it receives, it requests this data from a specific resource. The is the most common method by far.
- POST: Submits data to the server to be processed by a specific resource.
- HEAD: Identical to GET except that the server returns HTTP header information only, not the document’s body identified by the URL resource. This is good for summarizing main points about a page but doesn’t get into details.
- PUT: Uploads the data for a particular URL to the client who requested it. For example, uploading a new web page to a server.
- DELETE: Removes the data associated with the URL resource. An example would be deleting a page.
If you are interested in learning more about the specifics of HTTP, I high recommend this article from evantotuts+.
How to Fix 405 Method Not Allowed Errors
1. Comb through your website’s code to find bugs.
If there’s a mistake in your website’s code, your web server might not be able to correctly answer requests from a content delivery network. Comb through your code to find bugs or copy your code into a development machine. It’ll perform a thorough debug process that will simulate the exact situation your 405 Method Not Allowed Error occurred in and allow you to see the exact moment where things went wrong.
2. Sift through your server-side logs.
There are two types of server-side logs — applications logs and server logs. Application logs recount your website’s entire history, like the web pages requested by visitors and which servers it connected to. Server logs provide information about the hardware running your server, revealing details about its health and status. Sift through both types of server-side logs to uncover any alarming information about your server or website.
3. Check your server configuration files.
The last way to find out what’s causing your 405 Method Not Allowed Error is by taking a look at your web server’s configuration files. You can usually find instructions for solving unintentional redirects there.
Originally published Jan 18, 2019 7:00:00 AM, updated December 10 2019