时间:2021-05-25
在使用php的curl获取远程文件,代码如下:
复制代码 代码如下:
<?
$ghurl = isset($_GET['id']) ? $_GET['id']:'http:///");
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_HTTPHEADER,$header);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); //是否抓取跳转后的页面
ob_start();
curl_exec($ch);
$contents = ob_get_contents();
ob_end_clean();
curl_close($ch);
return $contents;
}
$contents = getContents($ghurl);
echo $contents;
?>
一般来说在win2003+iis下如,把php_curl.dll配置好就没问题了。
但笔者在 linux+apahe2.0+php5.2.12+directadmin,(一般国外主机商都是用这配置)如果获取的网址有301/302跳转,会报错:
curl_setopt() [function.curl-setopt]: CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in ***
关于这个问题,google,百度一下,都是在大篇长长的english,不精通linux的还真头痛。
解决办法其实很简单:登陆你的 directadmin
找到 ->>"PHP SafeMode Configuration" -->>看下图
把默认的Default Safe和Default Open BaseDir都OFF,问题就解决了。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
第一种PR挟持方法是利用跳转。一般搜索引擎在处理301和302转向的时候,都是把目标URL当作实际应该收录的URL。如果你从域名A做301或302跳转到域名B,
说明:python的urllib2获取网页(urlopen)会自动重定向(301,302)。但是,有时候我们需要获取302,301页面的状态信息。就必须获取到转
本文实例讲述了PHP使用curl_multi_select解决curl_multi网页假死问题的方法。分享给大家供大家参考,具体如下:curl_multi可以批
301跳转是指旧网址在废弃前转向新网址以保证用户的访问,在诸多服务器中,均支持本跳转方法。那么为什么网站建设要做301跳转呢,因为它对SEO是有影响的,我们
对网站建设还不太熟悉的人也许不知道什么是301跳转,301跳转是指旧网址在废弃前转向新网址以保证用户的访问,在诸多服务器中,均支持这种跳转方法。但是这对SE