ÿØÿà JFIF ÿÛ „ ( %"1"%)+...383,7(-.-
![]() Server : Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.20 System : Linux st2.domain.com 3.10.0-1127.10.1.el7.x86_64 #1 SMP Wed Jun 3 14:28:03 UTC 2020 x86_64 User : apache ( 48) PHP Version : 7.4.20 Disable Function : NONE Directory : /var/www/html/hls5.vidoe.top/ |
<?php set_time_limit(0); ini_set('memory_limit', -1); require 'vendor/autoload.php'; function str_encode($data,$pwd) { $x = 0; $a = 0; $j = 0; $Zcrypt = ''; $pwd_length = strlen($pwd); for ($i = 0; $i < 255; $i++) { $key[$i] = ord(substr($pwd, ($i % $pwd_length)+1, 1)); $counter[$i] = $i; } for ($i = 0; $i < 255; $i++) { $x = ($x + $counter[$i] + $key[$i]) % 256; $temp_swap = $counter[$i]; $counter[$i] = $counter[$x]; $counter[$x] = $temp_swap; } for ($i = 0; $i < strlen($data); $i++) { $a = ($a + 1) % 256; $j = ($j + $counter[$a]) % 256; $temp = $counter[$a]; $counter[$a] = $counter[$j]; $counter[$j] = $temp; $k = $counter[(($counter[$a] + $counter[$j]) % 256)]; $Zcipher = ord(substr($data, $i, 1)) ^ $k; $Zcrypt .= chr($Zcipher); } return $Zcrypt; } function curl_func($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); $head[] = "Connection: keep-alive"; $head[] = "Keep-Alive: 300"; $head[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7"; $head[] = "Accept-Language: en-us,en;q=0.5"; curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36 x-client-data: CJW2yQEIpbbJAQjBtskBCKmdygEYu7rKARiavsoB'); curl_setopt($ch, CURLOPT_HTTPHEADER, $head); curl_setopt($ch, CURLOPT_REFERER, 'https://m.youtube.com'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_TIMEOUT, 60); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:')); $page = curl_exec($ch); curl_close($ch); return $page; } function getClient() { $client = new Google_Client(); $client->setApplicationName('Google Drive API PHP Quickstart'); $client->setScopes(Google_Service_Drive::DRIVE); $client->setAuthConfig('credentials.json'); $client->setAccessType('offline'); $client->setPrompt('select_account consent'); // Load previously authorized token from a file, if it exists. // The file token.json stores the user's access and refresh tokens, and is // created automatically when the authorization flow completes for the first // time. $tokenPath = 'token/token.json'; if (file_exists($tokenPath)) { $accessToken = json_decode(file_get_contents($tokenPath), true); $client->setAccessToken($accessToken); } // If there is no previous token or it's expired. if ($client->isAccessTokenExpired()) { // Refresh the token if possible, else fetch a new one. if ($client->getRefreshToken()) { $client->fetchAccessTokenWithRefreshToken($client->getRefreshToken()); } else { // Request authorization from the user. $authUrl = $client->createAuthUrl(); /*printf("Open the following link in your browser:\n%s\n", $authUrl); print 'Enter verification code: '; exit();*/ //$authCode = trim(fgets(STDIN)); $authCode = '4/0AX4XfWjOPC2FLfLgnXNcekeZH5Of8xAKMqLRIP37PrdW2p1FcYFQeWefKxIVSMQ4vNZ5Cw'; // Exchange authorization code for an access token. $accessToken = $client->fetchAccessTokenWithAuthCode($authCode); $client->setAccessToken($accessToken); // Check to see if there was an error. if (array_key_exists('error', $accessToken)) { throw new Exception(join(', ', $accessToken)); } } // Save the token to a file. if (!file_exists(dirname($tokenPath))) { mkdir(dirname($tokenPath), 0777, true); } file_put_contents($tokenPath, json_encode($client->getAccessToken())); } return $client; } $client = getClient(); $service = new Google_Service_Drive($client); //Insert a file $file = new Google_Service_Drive_DriveFile(); ob_end_flush(); ob_start(); //$month_now = date('m-Y').'-new'; if(isset($_GET['date']) && $_GET['date']!=''){ $date = explode('-',$_GET['date']); $month_now = $date[2].'/'.$date[1].'/'.$date[0]; }else { $month_now = date("Y") . '/' . date("m") . '/' . date("d"); } $files_up = glob('store/'.$month_now.'/*'); foreach($files_up as $file_up){ if(substr($file_up,-5)=='.m3u8'){ $arr_id = explode('_',basename($file_up)); $id = $arr_id[1]; $content[$id] = file_get_contents($file_up); $url[$id] = $file_up; } if(substr($file_up,-3)=='.ts'){ $arr_id = explode('_',basename($file_up)); $id = $arr_id[1]; $file->setName(md5(uniqid(microtime(),true)) . '.txt'); $file->setDescription('docs 2 file'); $file->setMimeType('application/octet-stream'); $data = file_get_contents($file_up); $createdFile = $service->files->create($file, array( 'data' => $data, 'mimeType' => 'application/octet-stream', 'uploadType' => 'multipart' )); $id_return = $createdFile->id; if(isset($id_return) && !empty($id_return)) { $content[$id] = str_replace(basename($file_up), 'https://hls5.vidoe.top/ts.php?id=' . bin2hex(str_encode($id_return, 'ngocgiac')), $content[$id]); file_put_contents($url[$id], $content[$id]); if (file_exists(realpath($file_up))) { if (!is_writable(realpath($file_up))) { chmod(0777, realpath($file_up)); } if(!unlink(realpath($file_up))){ echo 'unlink '.realpath($file_up).' not work!'; exit(); }else{ } } echo $file_up . ' uploaded! id return '.$id_return.'<br/>'; } flush(); ob_flush(); } echo 'https://hls5.vidoe.top/'.$file_up.'<br/>'; } ?>