我目前正在尝试使用php函数'include'来包含外部URL。这样,每当网页更新时,它都会自动更新我的网页。然而,我遇到的麻烦是我不断收到错误说明......
警告:require()[function.require]:在第48行的C:\ wamp \ www \ starterpack \ starterpack2 \ header.php中的allow_url_include = 0,在服务器配置中禁用了http://包装器
我试图找到一种方法来修复此错误或找到解决方法,但无法找到。有没有人有任何想法?
P.S我正在使用wampserver构建网站,wampserver的权限是否会导致此错误?
答案 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');