ΠΠ½ΠΎΠ³ΠΈΠ΅ ΠΈΠ· Π½Π°Ρ ΠΏΠΎ ΡΡΡΠ°ΠΌ Π»ΡΠ±ΡΡ ΡΠ»ΡΡΠ°ΡΡ ΡΠ°Π΄ΠΈΠΎ. Π Π²ΠΎΡ Π² ΠΎΠ΄Π½ΠΎ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎΠ΅ ΡΡΡΠΎ Ρ ΠΎΡΠΎΠ·Π½Π°Π», ΡΡΠΎ Π½Π΅ Ρ ΠΎΡΡ ΡΠ»ΡΡΠ°ΡΡ ΠΌΠ΅ΡΡΠ½ΡΠ΅ Π€Π ΡΠ°Π΄ΠΈΠΎΡΡΠ°Π½ΡΠΈΠΈ. ΠΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ. ΠΠΎ ΠΏΡΠΈΠ²ΡΡΠΊΠ° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ Π²ΡΠ΅Π΄Π½ΠΎΠΉ. Π Ρ ΡΠ΅ΡΠΈΠ» Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π€Π-ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΎΠΌ. ΠΡΡΡΡΠ΅Π½ΡΠΊΠΎ ΠΊΡΠΏΠΈΠ» Π΄Π΅ΡΠ°Π»ΠΈ Π½Π° ΠΠ»ΠΈΡΠΊΡΠΏΡΠ΅ΡΡ ΠΈ ΡΠΎΠ±ΡΠ°Π» ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ.
Π ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ΅. Π‘Π΅ΡΠ΄ΡΠ΅ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠ° β ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ESP32. ΠΡΠΎΡΠΈΠ²ΠΊΠ° ΠΎΡ KA-radio. Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ Π΄Π΅ΡΠ°Π»Π΅ΠΉ ΠΌΠ½Π΅ ΠΎΠ±ΠΎΡΠ»Π°ΡΡ Π² 12 Π΄ΠΎΠ»Π»Π°ΡΠΎΠ². ΠΡΠΎΡΡΠΎΡΠ° ΡΠ±ΠΎΡΠΊΠΈ ΠΌΠ½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° ΡΠΎΠ±ΡΠ°ΡΡ Π΅Π³ΠΎ Π·Π° ΠΏΠ°ΡΡ Π΄Π½Π΅ΠΉ. Π₯ΠΎΡΠΎΡΠΎ ΠΈ ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. ΠΠ° 10 ΠΌΠ΅ΡΡΡΠ΅Π² ΡΠ°Π±ΠΎΡΡ Π·Π°Π²ΠΈΡΠ»ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΡΡ ΡΠ°Π· ΠΈ ΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΈΠ·-Π·Π° ΠΌΠΎΠΈΡ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΎΠ². Π£Π΄ΠΎΠ±Π½ΡΠΉ ΠΈ ΠΏΡΠΎΠ΄ΡΠΌΠ°Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΏΡΠ°Π²Π»ΡΡΡ Ρ ΡΠΌΠ°ΡΡΡΠΎΠ½Π° ΠΈ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ°. ΠΠ΄Π½ΠΈΠΌ ΡΠ»ΠΎΠ²ΠΎΠΌ ΡΡΠΎ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ.
ΠΡΠ΅ ΠΊΠ»Π°ΡΡΠ½ΠΎ. ΠΠΎ ΠΎΠ΄Π½ΠΈΠΌ ΡΠ°Π½Π½ΠΈΠΌ ΡΡΡΠΎΠΌ ΠΏΡΠΈΡΠ΅Π» ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ, ΡΡΠΎ ΠΏΡΠΈ Π½Π°Π»ΠΈΡΠΈΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π΅ΡΡΡΠΊΠ°ΠΌ ΡΡΡΡΡ ΡΠ°Π΄ΠΈΠΎΡΡΠ°Π½ΡΠΈΠΉ Π½Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ
ΡΡΠ°Π½ΡΠΈΠΉ. ΠΠ΅Π½Ρ ΡΠ°Π·Π΄ΡΠ°ΠΆΠ°Π»Π° ΡΠ΅ΠΊΠ»Π°ΠΌΠ°, ΡΡΠΏΡΠ΅ ΡΡΡΠΊΠΈ Π²Π΅Π΄ΡΡΠΈΡ
. ΠΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΏΡΡΠ³Π°Π» Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠ°Π½ΡΠΈΠΈ Π½Π° Π΄ΡΡΠ³ΡΡ. ΠΠ½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ Spotify ΠΈ Π―Π½Π΄Π΅ΠΊΡ.ΠΡΠ·ΡΠΊΠ°. ΠΠΎ ΠΏΠ΅ΡΠ°Π»Ρ Π² ΡΠΎΠΌ, ΡΡΠΎ Π½Π΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΎΠ½ΠΈ Π² ΠΌΠΎΠ΅ΠΉ ΡΡΡΠ°Π½Π΅. Π Ρ
ΠΎΡΠ΅Π» Π±Ρ ΠΈΡ
ΡΠ»ΡΡΠ°ΡΡ ΡΠ΅ΡΠ΅Π· ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ.
Π― Π²ΡΠΏΠΎΠΌΠ½ΠΈΠ» ΡΠ²ΠΎΡ Π΄Π΅ΡΡΡΠ²ΠΎ. Π£ ΠΌΠ΅Π½Ρ Π±ΡΠ» ΠΌΠ°Π³Π½ΠΈΡΠΎΡΠΎΠ½ ΠΈ Π΄Π²Π° Π΄Π΅ΡΡΡΠΊΠ° ΠΊΠ°ΡΡΠ΅Ρ. ΠΠ°ΡΡΠ΅ΡΠ°ΠΌΠΈ ΠΌΠ΅Π½ΡΠ»ΡΡ Ρ Π΄ΡΡΠ·ΡΡΠΌΠΈ. Π Π±ΡΠ»ΠΎ ΡΡΠ΄Π΅ΡΠ½ΠΎ. Π― ΡΠ΅ΡΠΈΠ», ΡΡΠΎ Π½Π°Π΄ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΡΠΈΠΌΠΈΠ½Π³ ΡΠ²ΠΎΠΈΡ
Π°ΡΠ΄ΠΈΠΎΠ°ΡΡ
ΠΈΠ²ΠΎΠ² ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π΅ΡΡΡ Π²Π°ΡΠΈΠ°Π½Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ Π°ΡΠ΄ΠΈΠΎΠΏΠ»Π΅Π΅Ρ ΠΈΠ»ΠΈ 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 ΠΊΠΎΠΏΠΈΡΡΡ Π² ΠΊΠΎΡΠ½Π΅Π²ΡΡ ΠΏΠ°ΠΏΠΊΡ Π°ΠΏΠ°ΡΠ° /var/www/ ΠΈ ΠΎΠ½ΠΈ ΡΠ°Π½Π΄ΠΎΠΌΠ½ΠΎ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΡΡ. ΠΠΊΠΎΠ»ΠΎ 300 ΠΏΠ΅ΡΠ΅Π½ Ρ
Π²Π°ΡΠ°Π΅Ρ Π½Π° Π²Π΅ΡΡ Π΄Π΅Π½Ρ ΠΏΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΠΎ.
Π€Π°ΠΉΠ» index.php β ΡΡΠΎ ΠΈ Π΅ΡΡΡ ΡΠ°ΠΌ ΡΠΊΡΠΈΠΏΡ. Π‘ΠΊΡΠΈΠΏΡ ΡΡΠΈΡΡΠ²Π°Π΅Ρ Π²ΡΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΌΡ3 ΡΠ°ΠΉΠ»ΠΎΠ² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π² ΠΌΠ°ΡΡΠΈΠ². Π‘ΠΎΠ·Π΄Π°Π΅Ρ Π°ΡΠ΄ΠΈΠΎ ΠΏΠΎΡΠΎΠΊ ΠΈ ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠΌΠ΅Π½Π° ΠΌΡ3 ΡΠ°ΠΉΠ»ΠΎΠ². ΠΡΠ²Π°ΡΡ ΠΌΠΎΠΌΠ΅Π½ΡΡ, ΠΊΠΎΠ³Π΄Π° ΡΠ»ΡΡΠ°Π΅ΡΡ ΠΏΠ΅ΡΠ½Ρ ΠΈ ΡΠ΅Π±Π΅ ΠΎΠ½Π° Π½ΡΠ°Π²ΠΈΡΡΡ. Π’Ρ Π΄ΡΠΌΠ°Π΅ΡΡ, ΠΊΡΠΎ ΡΡΠΎ ΠΏΠΎΡΡ? ΠΠ»Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ»ΡΡΠ°Ρ Π΅ΡΡΡ Π·Π°ΠΏΠΈΡΡ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΠΏΡΠΎΡΠ»ΡΡΠ°Π½Π½ΡΡ
ΡΡΠ΅ΠΊΠΎΠ² Π² Π»ΠΎΠ³ 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 ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π½ΠΎΠΌΠ΅Ρ ΡΡΠ΅ΠΊΠ° ΠΈ Ρ Π½Π΅Π³ΠΎ Π½Π°ΡΠ½Π΅ΡΡΡ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ°ΡΡΠΎΠ².
ΠΠΈΡΠ°Π» ΠΏΠ°ΡΡΠ΅ΡΡ Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΊΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎΠ΄ΠΊΠ°ΡΡΠΎΠ². ΠΠ½ Π±Π΅ΡΠ΅Ρ ΠΈΠ· RSS 4 ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΡΡΠ΅ΠΊΠ° ΠΈ ΡΠΊΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΈΡ . ΠΡΠ΅ ΡΡΠΎ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π° ΡΠΌΠ°ΡΡΡΠΎΠ½Π΅, IPTV ΠΏΡΠΈΡΡΠ°Π²ΠΊΠ΅, Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅.
ΠΠ΅Π΄Π°Π²Π½ΠΎ ΡΡΡΠΎΠΌ ΠΌΠ½Π΅ ΠΏΡΠΈΡΠ»Π° ΠΌΡΡΠ»Ρ, ΡΡΠΎ Π±ΡΠ»ΠΎ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π½ΠΈΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ Π½Π° ΡΡΠ΅ΠΊΠ΅. ΠΠΎ Π½Π΅ Π·Π½Π°Ρ ΠΏΠΎΠΊΠ°, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π½Π° PHP.
Π‘ΠΊΡΠΈΠΏΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com