Назад | Перейти на главную страницу

curl от localhost получает ошибку 404

У нас есть хост cPanel, работающий на centos, который поставил меня в тупик. Я пытаюсь использовать curl из командной строки для запуска определенной веб-страницы. Однако я продолжаю получать 404 ошибки для конкретной страницы, тогда как основная страница работает нормально.

curl http://example.com

Это прекрасно работает.

curl http://example.com/dev/buil?flush=all

Это возвращает 404 каждый раз. Я могу получить доступ к этой странице из веб-браузера, и действительно, запуск этой команды из другого удаленного Linux-сервера работает нормально. Я запустил захват пакетов на брандмауэре, за которым он находится, и не могу найти заблокированных пакетов, только запросы DNS для example.com.

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

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

В этом случае это может означать, что у вас есть другой виртуальный хост на 127.0.0.1 (интерфейс обратной связи), чем интерфейс WAN. Возможно, вам потребуется настроить файл hosts, чтобы указать это «имя хоста» на интерфейс WAN, а не на интерфейс «localhost».