Я использую веб-сервер IIS 8 / PHP и пытаюсь написать так называемый «прокси-скрипт» в качестве средства извлечения содержимого HTTP и загрузки его на страницу HTTPS.
Несмотря на то, что скрипт в некоторых случаях успешно работает (выводит все, что отправляет HTTP-страница) - например, Google.com, Amazon.com и т. Д. - он не работает при извлечении моего собственного веб-сайта и некоторых других.
Вот код proxy.php
:
<?php
$url = $_GET['url'];
echo "FETCHING URL<br/>"; // displays this no matter what URL I enter
$ctx_array = array('http' =>
array(
'method' => 'GET',
'timeout' => 10,
)
);
$ctx = stream_context_create($ctx_array);
$output = file_get_contents($url, false, $output); // times out for certain requests
echo $output;
Когда я устанавливаю $_GET['url']
в http://www.ucomc.net
, сценарий завершается ошибкой. С большинством других URL-адресов работает нормально.
Я проверил другие ответы здесь и в других местах, но ни один из них не описывает мою проблему, и предлагаемые решения не решают ее.
Я видел несколько предложений по аналогичным проблемам, которые связаны с изменением пользовательского агента, но когда я делаю это, он не только не решает существующую проблему, но и предотвращает загрузку других сайтов. Я не хочу полагаться на сторонние прокси (не доверяю свободным / хочу иметь дело с их лимитом запросов и не хочу платить за дорогие)