a29b9331 |
<?php
$file = base64_decode($_GET['file']);
$url = $file;
$auth = false;
if(isset($_GET['debug'])) {
echo "####### IMG URL #######\n";
echo $file."\n";
}
if (in_array("@", str_split($file))) {
$auth = TRUE;
if(isset($_GET['debug'])) {
echo "AUTH DETECTED!\n";
echo "CREDS: ".str_replace(array("http://", "https://"), "", explode("@", $url)[0])."\n";
echo "URL: ".explode(":", $url)[0]."://".explode("@", $url)[1]."\n";
}
}
$cache_file = './data/'.str_replace("=", "", base64_encode($file));
if (file_exists($cache_file) && (filemtime($cache_file) > (time() - 60 * 2 ))) {
$file = file_get_contents($cache_file);
} else {
if($auth) {
$authpass = base64_encode(str_replace(array("http://", "https://"), "", explode("@", $url)[0]));
$context = stream_context_create([
"http" => [
"header" => "Authorization: Basic $authpass"
]
]);
$file = file_get_contents(explode(":", $url)[0]."://".explode("@", $url)[1], false, $context );
} else {
$file = file_get_contents($url);
}
if(strlen($file) < 300) {
if (file_exists($cache_file)) {
$file = file_get_contents($cache_file);
} else {
die("Please try again later");
}
} else {
file_put_contents($cache_file, $file, LOCK_EX);
}
}
if(!isset($_GET['debug'])) { header('Content-Type: image/png'); } else { echo "####### IMG DATA #######\n"; }
echo $file;
|