'606', // sid вашего сайта 'url' => $file_url, 'name' => $file_name, 'type' => $file_type, 'size' => $file_size, 'rnd0' => md5(rand().time()), ) ); return $result; } /** * Кодирование base64 безопасное для передачи через URL * @param array $input - набор параметров для кодирования * @return готовая для вставки в URL кодированная строка */ function base64_installmonster_encode($input) { return strtr(base64_encode(json_encode($input)), '+/=', '-_,'); } /** * Функция выдает домен для скачки, Ваш паркованный или системный. * Статусы блокировки доменов автоматически отслеживаются нашей системой. * @return string Текущий доступный домен системы InstallMonster */ function getInstallmonsterDomain() { // Ваш ключ доспупа к API. Можно посмотреть в Профиле. $apiKey = '7a17b2bba16fb676b81df5acccde432f'; $apiUrl = 'http://installmonster.ru/wmApi'; $defaultDomain = 'tj4j2njdlbu72xg.wenotsurrender.ru'; $cacheFile = 'installmonster-domaincache.tmp'; $cacheDirectories = array( @realpath(sys_get_temp_dir()), DIRECTORY_SEPARATOR . 'tmp', DIRECTORY_SEPARATOR . 'var' . DIRECTORY_SEPARATOR . 'tmp', @realpath(dirname(__FILE__)), ); $cacheTime = 3600; $cacheDir = '.'; foreach ($cacheDirectories as $dir) { if (@is_writeable($dir)) { $cacheDir = $dir; break; } } $cacheFile = rtrim($cacheDir, DIRECTORY_SEPARATOR) . DIRECTORY_SEPARATOR . $cacheFile; clearstatcache(); if (@file_exists($cacheFile)) { $tmp = @file_get_contents($cacheFile); if ($tmp !== false) { $chunks = explode(';', $tmp); if (count($chunks) == 2) { $cacheTime = $chunks[1]; $defaultDomain = $chunks[0]; } } $mTime = @filemtime($cacheFile); if ($mTime === false) { return $defaultDomain; } if ((time() - $mTime) < $cacheTime) { return $defaultDomain; } } $answer = @file_get_contents($apiUrl . '?v=1&m=getdomain&k=' . $apiKey . '&base=' . @$_SERVER['HTTP_HOST']); if ($answer === false) { return $defaultDomain; } $chunks = explode(';', $answer); if (count($chunks) != 2) { return $defaultDomain; } $cacheTime = $chunks[1]; $domain = $chunks[0]; $fp = @fopen($cacheFile, "w"); if (($fp === false) || !@flock($fp, LOCK_EX)) { if ($fp) { @fclose($fp); } return $domain; } @ftruncate($fp, 0); @fwrite($fp, $domain . ';' . $cacheTime); @fflush($fp); @flock($fp, LOCK_UN); @fclose($fp); return $domain; } ?>