Curl Scraper работает на локальном хосте, но не на онлайн-серверах

Я пытаюсь очистить https://www.gst.gov.in

echo $html = file_get_contents("https://www.gst.gov.in");

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

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

я получаю тайм-аут, пытаясь из моего браузера, похоже, что сайт немного нестабильный.

user10226920 23.10.2018 04:19

Что вы получили, когда пинговали www.gst.gov.in?

tyloafer 23.10.2018 05:29

@IdontDownVote, вероятно, это географическая блокировка, они блокируют все IP, кроме индийских, ваш IP не индийский

hanshenrik 23.10.2018 09:58
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
2
3
448
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

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

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

почему он истекает по тайм-ауту и ​​не возвращает 403 или другой ответ?

user10226920 23.10.2018 04:40

@IdontDownVote - это брандмауэр, который просто отбрасывает все пакеты с неиндийских IP-адресов, его проще настроить и он более устойчив к DDoS-атакам, просто отбрасывая все пакеты, по сравнению с фактическим возвратом любого типа ответа, такого как HTTP-ответ.

hanshenrik 23.10.2018 09:57

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

Abhishek Kumar 23.10.2018 11:06

Убедитесь, что он работает, после удаления файлов конфигурации, таких как .htaccess. Если вы используете Html dom, то прячущиеся расширения могут вызвать проблемы (мое мнение). Например, приведенный ниже код вызывает проблемы с простым HTML-домом:

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^ %{REQUEST_URI}.php [L] 

Другие вопросы по теме