Handle system proxy in file downloads
parent
21ab41fa2d
commit
1471b41ba8
|
@ -59,7 +59,22 @@ abstract class FileDownloader implements DownloaderInterface
|
|||
}
|
||||
}
|
||||
|
||||
copy($url, $fileName);
|
||||
// Handle system proxy
|
||||
if (isset($_SERVER['HTTP_PROXY'])) {
|
||||
// http(s):// is not supported in proxy
|
||||
$proxy = str_replace(array('http://', 'https://'), array('tcp://', 'ssl://'), $_SERVER['HTTP_PROXY']);
|
||||
|
||||
$ctx = stream_context_create(array(
|
||||
'http' => array(
|
||||
'proxy' => $proxy,
|
||||
'request_fulluri' => true,
|
||||
),
|
||||
));
|
||||
|
||||
copy($url, $filename, $ctx);
|
||||
} else {
|
||||
copy($url, $fileName);
|
||||
}
|
||||
|
||||
if (!file_exists($fileName)) {
|
||||
throw new \UnexpectedValueException($url.' could not be saved to '.$fileName.', make sure the'
|
||||
|
|
Loading…
Reference in New Issue