file_get_contents 请求外部站点

file_get_contents request to external site

我正在尝试 file_get_contents Demo URL
但是服务器无法从外部站点获取数据。这是我回显 file_get_contents:

时得到的错误

Found The document has moved here. Apache/2.4 Server at spotifycharts.com Port 80

我在 php.ini file 中打开了 register_global,但这没有帮助。

为了确保我的网站能够从外部网站获取数据,最合乎逻辑的检查是什么?

您可能需要使用 cURL 请求,我认为 file_get_contents() 无法遵循 302 重定向。

像这样的东西应该有用...

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, TRUE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$a = curl_exec($ch);
if (preg_match('#Location: (.*)#', $a, $r))
  $l = trim($r[1]);

How to get the real URL after file_get_contents if redirection happens?
Source

只需使用 https url 而不是 http url:

https://spotifycharts.com/api/?type=regional&country=nl&recurrence=daily&date=latest&limit=200