View previous topic :: View next topic |
Author |
Message |
Spiralis n00b
Joined: 22 Jun 2003 Posts: 47
|
Posted: Mon Oct 06, 2003 7:45 pm Post subject: Apache2, php4 og .htaccess |
|
|
Hei,
Jeg har satt opp en apache2 server, som snurrer uten problemer. Jeg har i tillegg lagt inn php (stolt av meg selv nå ja). Deretter har jeg laget en liten jukebox som har mine mp3 filer liggende, slik at jeg kan streame dem fra jobb. Problemet mitt nå er at jeg ikke vil ha disse tilgjengelig for ALLE og en hver...
Hvordan kan jeg løse dette? Noen har sagt at jeg kan bruke .htaccess for å passordbeskytte området, men dette er ikke noe jeg vil ha, i grunnen. Det jeg ønsker er at den enten skal godta min IP-adresse på jobb. Som nødløsning går .htaccess
Noen gode forslag?
PS. n00b@work here, så gi meg det med te-skje. _________________ Kristian |
|
Back to top |
|
|
nat Apprentice
Joined: 04 Sep 2002 Posts: 205
|
Posted: Mon Oct 06, 2003 8:05 pm Post subject: |
|
|
alle dine mp3 på http... cool! hva var url'en sa du?
du kan lage php script som tar seg av det. I prisnippet fungerer det slik:
du lager et php script. parameter til scriptet er filnavn.
scriptet sjekker opp REMOTE_HOST. Hvis ikke den er en tillatt ip avsluttes scriptet.
Ellers settes en http header, content-type, til audio/mp3 eller hva det nå skal være. (husker ikke i farten). siden er det bare å åpne filen og spytte ut den.
Code: | $f= open($filnavn);
while ($buf = read($f)) {
write(STDOUT, $buf);
} |
koden vil ikke fungere men illustrerer prinsippet. (Det var lengesiden jeg drev på med php)
Siden henter du en fil med http://dinmaskin/dittscript?fil=dinfil.mp3
Men det er nok lettere med .htaccess. Da kan du lage en playlist med http://bruker:passord@dinmaskin/dinfil.mp3 og så kan du nå filene fra overalt. |
|
Back to top |
|
|
Spiralis n00b
Joined: 22 Jun 2003 Posts: 47
|
Posted: Mon Oct 06, 2003 8:14 pm Post subject: |
|
|
nat wrote: | alle dine mp3 på http... cool! hva var url'en sa du?
du kan lage php script som tar seg av det. I prisnippet fungerer det slik:
du lager et php script. parameter til scriptet er filnavn.
scriptet sjekker opp REMOTE_HOST. Hvis ikke den er en tillatt ip avsluttes scriptet.
Ellers settes en http header, content-type, til audio/mp3 eller hva det nå skal være. (husker ikke i farten). siden er det bare å åpne filen og spytte ut den.
Code: | $f= open($filnavn);
while ($buf = read($f)) {
write(STDOUT, $buf);
} |
koden vil ikke fungere men illustrerer prinsippet. (Det var lengesiden jeg drev på med php)
Siden henter du en fil med http://dinmaskin/dittscript?fil=dinfil.mp3
Men det er nok lettere med .htaccess. Da kan du lage en playlist med http://bruker:passord@dinmaskin/dinfil.mp3 og så kan du nå filene fra overalt. |
TIHI.. apacheserveren er slått av og jeg skjønte ikke en dritt av det du skreiv
Går det å sette opp iptables til å godta ip-adresse til den katalogen?
Slik at iptables tar seg av det hele?
http://mittdomene.no/jukeboks -> allow ip xxx.xxx.xxx.xxx ? _________________ Kristian |
|
Back to top |
|
|
nat Apprentice
Joined: 04 Sep 2002 Posts: 205
|
Posted: Wed Oct 08, 2003 6:51 am Post subject: |
|
|
Ikke rart du ikke skjønte. Det var veldig unøyaktig også... Her er kode som fungerer (japp jeg har testet den):
Code: | <?php
$path="/home/ftp/pub/music/new";
$allowed="127.0.0.1";
if ($_GET['fil'] && $_SERVER['REMOTE_ADDR']==$allowed) {
$fil = "$path/".$_GET['fil'];
header("Content-Type: audio/mpeg");
readfile($fil);
} else {
echo (phpinfo());
}
?> |
Hvis du lagrer det som ~/public_html/music.php kan du laste ner din mp3filer med: http://localhost/~<dinbruker>/music.php?fil=filnavn.mp3
Du må endre $path og når du testet at det fungerer endrer du $allowed. (du kan la $allowed være en liste men det får bli en øvingsoppgave)
Quote: | Går det å sette opp iptables til å godta ip-adresse til den katalogen?
Slik at iptables tar seg av det hele?
|
Nei. iptables er kun pakkefilter. Men du skal kunne sette det i apache2.conf
Code: |
<Directory "/var/www/dine/filer">
Allow from ...
<Directory/>
|
Er ikke godt kjent med apache conf men du må trolig sette flere verdier. Order, AllowOverride skulle jeg tro. |
|
Back to top |
|
|
|