Curl Scraper 在本地主机上工作但不在在线服务器上工作
Curl Scraper working on localhost but not on online servers
我正在尝试抓取 https://www.gst.gov.in
echo $html = file_get_contents("https://www.gst.gov.in");
此代码在本地主机上运行完美,但在服务器上运行不佳。
我尝试过使用不同的服务和各种 curl 方法以及自定义 headers 和引荐来源网址,但没有成功。在服务器上,我收到连接超时错误。
如果我使用任何其他 https URL 或其他网站,它工作正常。问题在于这个特定的 URL 如果有人能判断远程服务器是否阻止了请求,那么任何人都可以帮助抓取此页面,然后如何绕过这个。
这是一个政府网站 - 它很可能会阻止来自非本地地理区域的任何 IP。
即你的服务器需要在印度或有印度代理,因为你正在尝试下载印度政府页面。
删除 .htaccess 等配置文件后,请检查一次它是否有效。如果您使用 Html dom 那么扩展隐藏器可能会造成麻烦(我的观点)。例如。下面提到的代码导致简单 Html dom:
出现问题
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]
我正在尝试抓取 https://www.gst.gov.in
echo $html = file_get_contents("https://www.gst.gov.in");
此代码在本地主机上运行完美,但在服务器上运行不佳。
我尝试过使用不同的服务和各种 curl 方法以及自定义 headers 和引荐来源网址,但没有成功。在服务器上,我收到连接超时错误。
如果我使用任何其他 https URL 或其他网站,它工作正常。问题在于这个特定的 URL 如果有人能判断远程服务器是否阻止了请求,那么任何人都可以帮助抓取此页面,然后如何绕过这个。
这是一个政府网站 - 它很可能会阻止来自非本地地理区域的任何 IP。
即你的服务器需要在印度或有印度代理,因为你正在尝试下载印度政府页面。
删除 .htaccess 等配置文件后,请检查一次它是否有效。如果您使用 Html dom 那么扩展隐藏器可能会造成麻烦(我的观点)。例如。下面提到的代码导致简单 Html dom:
出现问题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]