แแแแ แฉแแแแแแแก แฃแงแแแ แก แ แแแแแก แแแกแแแแ แแแแแ. แจแแแแแ แแ แแ แ แแจแแแแแแ แแแแแก แแแแฎแแแ, แ แแ แแ แแแแแแแ แแแแแแแแ แแแ FM แ แแแแแกแแแแฃแ แแแแก แแแกแแแแ. แฒแ แแ แแก แแแแแขแแ แแกแแแฃแแ. แแแแ แแ แฉแแแแ แกแแแแแแ แแฆแแแฉแแแ. แแ แแแแแแฌแงแแแขแ แจแแชแแแแ FM แแแแฆแแแ แแแขแแ แแแข แแแแฆแแแแ. แกแฌแ แแคแแ แแแงแแแ แแแฌแแแแแ แแแแแฅแกแแ แแกแแ แแ แแแแฌแงแ แแแขแแ แแแข แแแแฆแแแ.
แแแขแแ แแแข แแแแฆแแแแก แจแแกแแฎแแ. แแแแฆแแแแก แแฃแแ แแ แแก ESP32 แแแแ แแแแแขแ แแแแ แ. Firmware KA-แ แแแแแแแ. แแแฌแแแแแ 12$ แแแแแฏแแ. แจแแแ แแแแก แกแแแแ แขแแแ แกแแจแฃแแแแแแก แแแซแแแแแ แ แแแแแแแแ แแฆแแจแ แจแแแแแ แแแ. แแฃแจแแแแก แแแ แแแ แแ แกแขแแแแแฃแ แแ. แแฃแจแแแแแก 10 แแแแก แแแแแแแแแแแจแ แแก แแฎแแแแ แ แแแแแแฏแแ แแ แแแแงแแแ, แจแแแแแ แแ แแฎแแแแ แฉแแแ แแฅแกแแแ แแแแแขแแแแก แแแแ. แแแกแแฎแแ แฎแแแแแ แแ แแแ แแแ แแแแแ แแแฃแแ แแแขแแ แคแแแกแ แกแแจแฃแแแแแแก แแแซแแแแ แแแ แแแ แกแแแ แขแคแแแแแแ แแ แแแแแแฃแขแแ แแแแ. แแ แแ แกแแขแงแแแ, แแก แแจแแแแแแ แ แแแขแแ แแแข แแแแฆแแแแ.
แงแแแแแคแแ แ แ แแแแแ. แแแแ แแ แแ แ แแแแแ แแแ แ แแแแแแ แแแกแแแแแแแ, แ แแ แแแแแแแกแแแแ แ แแแแแกแแแแฃแ แแ แฌแแแแแแก แแแฃแฎแแแแแแ, แกแแแแขแแ แแกแ แกแแแแฃแ แแแ แแ แแงแ. แแแฆแแแแแแแแแ แ แแแแแแ แแ แฌแแแงแแแแแแแก แกแฃแแแแฃแ แ แฎแฃแแ แแแแแ. แแแแฃแแแแแแ แฎแขแฃแแแแก แแ แแ แกแแแแฃแ แแแแ แแแแ แแแ. แแแแฌแแแก Spotify แแ Yandex.Music. แแแแ แแ แกแแแฌแฃแฎแแ แ แแก แแ แแก, แ แแ แแกแแแ แแ แแฃแจแแแแแ แฉแแแก แฅแแแงแแแแจแ. แแ แแกแฃแ แก แแแแ แแแกแแแแ แแแขแแ แแแข แแแแฆแแแแก แกแแจแฃแแแแแแ.
แแแแจแแแแ แแแแแฎแกแแแแ. แแ แแฅแแแแ แแแแแแขแแคแแแ แแ แแ แ แแแแฃแแ แแแกแแขแ. แแแแแแ แแแแแ แแ แแแ แแแแชแแแแ แแแกแแขแแแ. แแ แแจแแแแแแ แ แแงแ. แแแแแแฌแงแแแขแ, แ แแ แฉแแแ แแฃแแแ แแ แฅแแแแก แแฎแแแแ แแแขแแ แแแข แแแแฆแแแแก แกแขแ แแแแแแ แแญแแ แแแแแแ. แ แ แแฅแแ แฃแแแ, แแ แกแแแแแก แจแแกแแซแแแแแแแ, แแแแแแแจแแ แแ แแฃแแแ แแแแแ แ แแ iPod แแแแแแแแแแแแ แแ แแ แแแแ แแแฃแแแ. แแแแ แแ แแก แแ แแ แแก แฉแแแแ แแแ! แแแแแแฆแแแ แแแแแแแแจแแ แแแแแ แแแแแฅแขแแ แแแ)
แแแแแฌแงแ แแแ แแแแแฌแงแแแขแแแแแแแแก แซแแแแ. แแแแแ แแ แแ แแก แจแแแแแแแแแ แจแแฅแแแแ แแฅแแแแ แกแแแฃแแแ แ แแแขแแ แแแข แ แแแแ Radio-Tochka.com-แแกแแแ. 5 แแฆแ แแแแขแแกแขแ. แงแแแแแคแแ แ แแแ แแแ แแฃแจแแแแแ แฉแแแก แแแขแแ แแแข แแแแฆแแแแแ. แแแแ แแ แคแแกแ แแ แแงแ แฉแแแแแแก แแแแแแแแแแ. แแ แฃแแ แ แแแฅแแ แแ แแแ แแแแขแแ.
แแ แแแฅแแก แแแแแฎแแแแ แฐแแกแขแแแแ 10 GB. แแ แแแแแแฌแงแแแขแ แแแแแฌแแ แ แกแแ แแแขแ แ แแฆแแชแแแ, แ แแแแแแช แแแแแแฆแแแแ แฉแแแ mp3 แคแแแแแแแก แแฃแแแ แแแแแแก. แแแแแแฌแงแแแขแ แแแแแฌแแ แ PHP-แจแ. แกแฌแ แแคแแ แแแแฌแแ แ แแ แแแแฃแจแแ. แงแแแแแคแแ แ แแฃแจแแแแแ. แฒแแแแ แ แแงแ! แแแแ แแ แแ แแแแ แแฆแแก แจแแแแแ แแแแแฆแ แฌแแ แแแ แแแกแแแแซแแแแแก แแแแแแแกแขแ แแชแแแกแแแ. แแแกแจแ แแแแฅแแแแแ, แ แแ แแแแแญแแ แแแแฃแแแ แแ แแชแแกแแ แแก แฌแฃแแแแแก แแแแแขแ แแ แกแแญแแ แแ แฃแคแ แ แแแฆแแ แขแแ แแคแแ แแแแแฎแแแแ. แกแแ แแแขแ แฃแแแ แฌแแจแแแแแงแ แแ แแก แแแ แแแแขแ แแแขแแแแแฃแแแงแ.
แฒ แแแแ แแแฎแแ? แ แแแแแก แแแ แแจแ แแ แจแแแแซแแแ แชแฎแแแ แแแ. แแฃ แแกแแแ แแ แแแซแแแแแ แกแแจแฃแแแแแแก แกแแ แแแขแแก แแแจแแแแ แกแฎแแแก แฐแแกแขแแแแแ, แแแจแแ แแญแแ แแแแแ แแฅแแแแ แกแแแฃแแแ แ แกแแ แแแ แ. แกแแ แแแแแแแแแ แแแแก, แ แแช แฉแแแก แกแฃแแก แกแฃแ แก.
แแ แแแฅแแก แฃแซแแแแแกแ แแแขแแฃแฅแ แแแขแแ แแแก แแแ แแจแ (CPU - 900 MHz, RAM - 512 Mb). แแแฎแฃแชแ แฃแแแ 11 แฌแแแกแแ. แแแแแแแแแ แกแแ แแแ แแกแแแแก. แแ แแแแแแแกแขแแแแ แ Ubuntu 12.04. แแแ แ แแแแแกแขแแแแ แ Apache2 แแ php 5.3, samba. แฉแแแ แกแแ แแแ แ แแแแ แแ แแก.
แแแแแแฌแงแแแขแ แแแกแแแฏแ Icecast. แแแกแแ แแแแ แ แแแแ แฌแแแแแแแฎแ. แแแแ แแ แแแแแญแแ แแ. แแ แแ แแแแแแฌแงแแแขแ แแแแฃแแ แฃแแแ แแแ แแแแขแก PHP แกแแ แแแขแแ. แ แแแแแแแแ แแฆแ แแแแฎแแ แฏแ แแ แกแแ แแแขแแก แแแแแ แแแแแ. แแ แงแแแแแคแแ แ แแจแแแแแแ แแ แแฃแจแแแแแ. แจแแแแแ แแแช แแแแฌแแ แ แกแแ แแแขแ แแแแแแกแขแแแแก แกแแแแแแจแแ. แแ แแแแแแแ แแแแแฌแแแ, แ แแ แแแแแแฌแงแแแขแ แแแขแแ แ แแ แแแฅแขแ แแแแแแแแแแแแ. แแแก แฃแฌแแแแก IWScast.
แงแแแแแคแแ แ แซแแแแแ แแแ แขแแแแ. แแแแแแแ แแ mp3 แคแแแแแแก แแ index.php แคแแแแก Apache root แกแแฅแแฆแแแแแจแ /var/www/ แแ แแกแแแ แฃแแ แแแแ แจแแแแฎแแแแแ. แแแแฎแแแแแแ 300 แกแแแฆแแ แ แกแแแแแ แแกแแ แแแแฎแแแแแแ แแแแแ แแฆแแกแแแแก.
index.php แคแแแแ แแแแแ แกแแ แแแขแแ. แกแแ แแแขแ แแแแฎแฃแแแแก MP3 แคแแแแแก แงแแแแ แกแแฎแแแก แแแ แแฅแขแแ แแแจแ แแแกแแแจแ. แฅแแแแก แแฃแแแ แแแแแแก แแ แชแแแแก MP3 แคแแแแแแแก แกแแฎแแแแแก. แแ แแก แจแแแแฎแแแแแแ, แ แแชแ แกแแแฆแแ แแก แฃแกแแแ แแ แแแแฌแแแก. แแฅแแแแ แแแ แแ แแแ แแฆแแ แแก? แแกแแแ แจแแแแฎแแแแแกแแแแก แแ แแก แแแกแแแแแแ แขแ แแแแแแก แกแแฎแแแแแแก แฉแแแแฌแแ แ log.txt-แจแ.
แกแ แฃแแ แกแแ แแแขแแก แแแแ
<?php
set_time_limit(0);
header('Content-type: audio/mpeg');
header("Content-Transfer-Encoding: binary");
header("Pragma: no-cache");
header("icy-br: 128 ");
header("icy-name: your name");
header("icy-description: your description");
$files = glob("*.mp3");
shuffle($files); //Random on
for ($x=0; $x < count($files);) {
$filePath = $files[$x++];
$bitrate = 128;
$strContext=stream_context_create(
array(
'http'=>array(
'method' =>'GET',
'header' => 'Icy-MetaData: 1',
'header' =>"Accept-language: enrn"
)
)
);
//Save to log
$fl = $filePath;
$log = date('Y-m-d H:i:s') . ' Song - ' . $fl;
file_put_contents('log.txt', $log . PHP_EOL, FILE_APPEND);
$fpOrigin=fopen($filePath, 'rb', false, $strContext);
while(!feof($fpOrigin)){
$buffer=fread($fpOrigin, 4096);
echo $buffer;
flush();
}
fclose($fpOrigin);
}
?>
แแฃ แแฅแแแ แแญแแ แแแแแ แขแ แแแแแแก แแแแแ แ แแแแแแแแแแ แแแแ, แแแจแแ แฃแแแ แแแฌแแ แแ แแแแแแขแแ แ index.php-แจแ
shuffle($files); //Random on
แแแแแแกแขแแแแกแแแแก แแแงแแแแ /var/www/podcast/ แแ แแก แแแแแ แแ แแ แกแแ แแแขแ index.php. แแแก แแฅแแก แแแแแแกแขแแก แขแ แแแแก แแแแแฎแกแแแ แแแ. แจแแแแแ แฏแแ แแ, แ แแแแกแแช แฉแแ แแแแ แแแขแแ แแแข แแแแฆแแแก, แแแแแแจแแแก แจแแแแแแ แแแแแแกแขแแก แฉแแแแฌแแ แ. แแกแแแ แแ แแก แแแแแแแจแแแ แขแ แแแแแแก แแฃแ แแแแ.
counter.dat แคแแแแจแ แจแแแแซแแแแ แแแฃแแแแแ แขแ แแแแก แแแแแ แ แแ แแแกแแแ แแแแฌแงแแแ แแแแแแกแขแแก แแแแแ แ.
แแแฌแแ แ แแแ แกแแ แแแ แแแแแแกแขแแแแก แแแขแแแแขแฃแ แ แฉแแแแขแแแ แแแแกแแแแก. แแก แแฆแแแก แฃแแฎแแแก 4 แขแ แแแก RSS-แแแ แแ แฉแแแแขแแแ แแแแก แแแ. แแก แงแแแแแคแแ แ แแจแแแแแแ แแ แแฃแจแแแแก แกแแแ แขแคแแแแ, IPTV แกแแข-แขแแ แแแฅแกแแ แแ แแ แแฃแแแ แจแ.
แแแแ แ แแแแแ แแแแแแแแ, แ แแ แแแ แแ แแฅแแแแแแ แขแ แแแแ แแแแแ แแก แแแแแชแแแก แแแแแฎแกแแแ แแแ. แแแแ แแ แแ แฏแแ แแ แแแชแ แ แแแแ แแแแแแแแ แแก PHP-แจแ.
แกแแ แแแขแแก แฉแแแแขแแแ แแแ แจแแกแแซแแแแแแแ
แฌแงแแ แ: www.habr.com