2.20.3. Ошибка 405 Not Allowed

Подобная ошибка может возникать в нескольких случаях:

  • Ошибка вызвана работой PHP-скрипта, который отвечает за импорт данных на сайт. На хостинге установлено ограничение времени выполнения скрипта, равное 30 секунд. Скрипт не укладывается в отведённое ему время, в следствие чего можно увидеть ошибку «405 Not Allowed». В этой ситуации решений может быть несколько:
    • Перед запуском скрипта включать Turbo Boost.
    • Разбивать файл на более мелкие части и импортировать их через PHP-скрипт поочередно.
    • Импортировать данные напрямую в базу данных доступными способами.
    • Если стоит принципиальная задача регулярно производить импорт данных именно при помощи PHP-скрипта, то в этом случае вы можете настроить его запуск через cron. В этом случае время выполнения будет равно 1 часу, чего вполне должно хватить для импорта нужных данных.
    • Рассмотреть вариант перехода на бизнес-тариф.
  • При выполнении POST-запросов также может возникать данная ошибка. В большинстве случаев это будет видно в логах сервера. Проблема заключается в том, что расширения файлов, которые вы пытаетесь вызывать в скрипте, должен обрабатывать непосредственно Apache. В этом случае вам нужно будет эти расширения удалить (не все, а только те, что непосредственно мешают корректной работе скрипта) из списка статических файлов.
  • При выполнении POST-запросов в случае блокировки запроса на уровне nginx (например: коды 500 или 403, включая ограничение доступа к сайту и так далее). Все стандартные ошибки и ограничения доступа по умолчанию обрабатываются веб-сервером nginx, который не принимает POST-запросы, в связи с чем возвращает ответ «405 Not Allowed». Это такое актуально для запросов от заблокированных User-Agent.
Содержание