php包含到外部URL

时间:2012-02-08 15:24:17

标签: php include

我目前正在尝试使用php函数'include'来包含外部URL。这样,每当网页更新时,它都会自动更新我的网页。然而,我遇到的麻烦是我不断收到错误说明......

警告:require()[function.require]:在第48行的C:\ wamp \ www \ starterpack \ starterpack2 \ header.php中的allow_url_include = 0,在服务器配置中禁用了http://包装器

我试图找到一种方法来修复此错误或找到解决方法,但无法找到。有没有人有任何想法?

P.S我正在使用wampserver构建网站,wampserver的权限是否会导致此错误?

5 个答案:

答案 0 :(得分:8)

使用echo file_get_contents($url)会更好,因为include语句可以执行其他站点返回的任何PHP代码。

答案 1 :(得分:7)

查看你的php.ini并确保allow_url_include设置为1.重启HTTPD,完成。

答案 2 :(得分:4)

function getter($url) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    $data = curl_exec($ch);
    curl_close($ch);
    return $data;
}

echo getter('http://yourdomain.com/externalfile.php');

你已经完成了:)

答案 3 :(得分:0)

这将加载外部网站,并为外部链接提供绝对的网站链接地址

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.your_external_website.com");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$result = curl_exec($ch);
curl_close($ch);
$result = preg_replace("#(<\s*a\s+[^>]*href\s*=\s*[\"'])(?!http)([^\"'>]+)([\"'>]+)#",'$1http://www.your_external_website.com/$2$3', $result);
echo $result

答案 4 :(得分:0)

查看你的php.ini并确保allow_url_include设置为1

否则请使用以下内容......

function getter($url) 
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);
return $data;}
echo getter('http://yourdomain.com/externalfile.php');