В настоящее время я пытаюсь использовать функцию php include, чтобы включить внешний url. Это значит, что всякий раз, когда веб-страница обновляется, она автоматически обновляет мою. Проблема, с которой я сталкиваюсь, заключается в том, что я продолжаю ошибаться, говоря следующее:
Предупреждение: require () [function.require]: http: // оболочка отключена в конфигурации сервера allow_url_include = 0 в C: \ wamp \ www \ starterpack \ starterpack2 \ header.php в строке 48
Я попытался найти способ исправить эту ошибку или найти способ обойти ее, но не могу ее найти. У кого-нибудь есть идеи?
PS Я строю сайт с помощью wampserver, могут ли ошибки сервера Wamps быть причиной этой ошибки?
Посмотрите на свой php.ini и убедитесь, что allow_url_include установлен в 1. Перезапустить HTTPD, сделано.
Вам лучше использовать echo file_get_contents($url)
поскольку оператор include может выполнять любой PHP-код, возвращенный другим сайтом.
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');
И вы сделали 🙂
Это загрузит внешний веб-сайт, а также предоставит внешним ссылкам абсолютный адрес ссылки на сайт
$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
Посмотрите на свой 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');