Avatar billede tjens Nybegynder
19. september 2003 - 21:18 Der er 2 kommentarer og
1 løsning

mod_expires per directory

Jeg har en Linux (RH8) server med Apache2 og webcam programmet Motion.

Motion overskriver snapshots i en folder /cam2 under document root. Disse billeder ændrer sig hele tiden, og skal have en expires header som ikke casher i klienten.

Derudover gemmer Motion billeder ved bevægelse i en folderstruktur under /cam2 som /yyyy/mm/dd/hh/mm/  som  overvågningskamerafunktion.

Under /cam2/2003/09/19/21/08/ ligger selve billederne med sekunder og et løbenr som filnavn. F.eks:  47-1.jpg 47-2.jpg ... ... Disse billeder er statiske, og må gerne cashes i klienten.

Jeg vil altså gerne have 2 vidt forskellige expires regler for jpegs efter hvilket bibliotek de ligger i.

For at det kan virke skal klienten ikke genbruge billeder med samme filnavn, når de har forskellig URL, men det tror jeg nu heller ikke er problem.

Jeg har midlertidigt løst mit problem, ved at lade en særlig php rutine sætte expires headeren, når jeg læser seneste snapshot: http://www.eksperten.dk/spm/401779

Jeg vil dog gerne gøre det rigtigt med Apache konfiguration, for ikke at gøre min PHP kode unødvendigt kompliceret.

Kan man have forskellig mod_expires for en filtype per bibliotek?  Hvis ja, Hvordan er syntaxen, og skal det stå i httpd.conf?
Avatar billede htm Nybegynder
20. september 2003 - 12:08 #1
Mon ikke du bare kan smide det ind i directory klammer... som eks. Og ja det skal stå i httpd.conf  bare tilføj det nederst.

<directory /cam2>
ExpiresActive On
ExpiresDefault "access"
</directory>

Er ikke helt klar over den rette syntaks for mod_expire, men den kender du nok. Men i følge manualen ser det fint ud: http://httpd.apache.org/docs/mod/mod_expires.html
Avatar billede tjens Nybegynder
20. september 2003 - 23:09 #2
Tak for tippet htm.

Jeg har indsat følgende så /cam2 roden giver expires 0 sekunder og så /cam2/2* underfolderne får 1 måned (så længe ligger de nok ikke i cashe alligevel):

Din <directory /cam2> virkede dog ikke; /cam2 er åbentbart ikke relativt til document root.

Min løsning:

<directory /var/www/html/cam2>
ExpiresActive On
ExpiresByType image/jpeg "access"
</directory>

<directory /var/www/html/cam2/2*>
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 month"
</directory>
Avatar billede htm Nybegynder
21. september 2003 - 11:39 #3
OK selvfølgelig skal det være hele stien, men jeg regnede med at /cam2 var en mappe i roden ;o)

Godt du fik det tilk at virke. Takker for point!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Uanset kodesprog, så giver vi dig mulighederne for at udvikle det, du behøver.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester