我试图从以下的URL检索一个网页:
< a href="http://www.medicare.gov/find- a-doctor/provider-resultures.aspx?searchtype=OHP&specgrpids=922&loc=43615&pref=No&pref=未知的 &dist=25&lat=41.65603&lng=83366676" rel=nforpol >http://www.medicare.gov/find-a-doctor/providr-resultures.aspx?Searchty=OHP&specgrpids=922&loc=43615&pref=No&gender=未知&damp=25&lat=41.6603&lng=836676
当我将它粘贴到浏览器中时, 它有效, 但是当我通过 CURL 运行时, 我收到一个页面, 错误如下 : “ 请求的 URL 的一个或多个查询字符串参数无效或有意外值, 请更正并重试 。 b>
如果我提供不同的用户 Agency 或 referreer, 这似乎没有什么区别。 有一个改变, 所以我使用 CURLOPT_ FOLLOWLOCION 。
这是我的代码:
$ch = curl_init($page);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERAGENT, Mozilla/5.0 (Windows NT 5.1; rv:12.0) Gecko/20100101 Firefox/12.0 );
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$html = curl_exec($ch);
curl_close($ch);
echo $html;
为何这样的请求会在浏览器里有效 而不与 CURL 合作呢?