我有一段代碼,旨在接收任何網址並從網上撕掉它。到目前爲止,它一直工作正常,直到有人給了這個網址:無法捲曲遠程文件
http://www.aspensurgical.com/static/images/aspen_hill-rom_logo.png
如果我打它從我的瀏覽器,它顯示就好了。但是,當我試着捲曲下來,我得到:
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don't have permission to access /static/images/aspen_hill-rom_logo.png
on this server.</p>
<hr>
<address> Server at www.aspensurgical.com Port 80</address>
</body></html>
我使用捲曲代碼:
$ch = curl_init(str_replace(' ', '%20', $url));
$fh = fopen($local_file, "w");
curl_setopt($ch, CURLOPT_FILE, $fh);
curl_exec($ch);
curl_close($ch);
是他們的服務器在某種程度上意識到我不是一個正常的瀏覽器,並引導我?
先生,你應該有一個偉大的大餅乾。萬分感謝! – Anthony 2013-03-21 06:08:56
你能解釋一下useragent,那麼Chrome,safari和其他瀏覽器呢,爲什麼我們需要添加它們呢? – Naeem 2013-03-21 06:11:37
@Naeem每個瀏覽器都會發送自己的用戶代理字符串來標識自己。常見的搜索引擎機器人在用戶代理字符串中顯示他們工作的搜索引擎。這就是爲什麼一些網站挖掘這個字符串來查看誰請求頁面。 – Ranty 2013-03-21 06:13:30