Ehi lì!htaccess - riscrittura condizionale e scadenza
Ho una cartella /static
nel mio webroot del server Apache 2.x. Se una richiesta corrisponde
/static/<somename like [\S-_]+>.(png|jpg|css|js)/\d{8,15}
ad esempio
/static/bg.jpg/1335455634
Voglio due cose:
- url deve essere riscritto per
/static/bg.jpg
(sbarazzarsi del timestamp) - Esso diventa a never-expire ('scade il 2030, max-età = 290304000, cache pubblica, ...)
Se la richiesta non corrisponde, la richiesta e le intestazioni dovrebbero essere normali, nessuna riscrittura. Idealmente, qualsiasi richiesta esterna/statica/* non dovrebbe essere influenzata (anche se "coincidenti timbri finali" dovrebbero essere rari ...)
Non ho altro che problemi con FilesMatch/RewriteCond, quindi preferisco non postare i miei scarsi tentativi. .. (Riscrivi in genereal è abilitato sulla mia macchina e possiedo i diritti per inviare intestazioni relative alla cache)
Dankeschön!
Grazie. Lo * cercherò * e lo testerò. Chiedo la tua pazienza per altri 2-3 giorni. –
Nessun problema. Felice di aiutare. A proposito, questo è uno strumento molto utile per testare le regole htaccess - http://htaccess.madewithlove.be/ – jesal
Grazie. La tua soluzione, rispettivamente, entrambe le soluzioni funzionano. Una cosa sembra impossibile: i file non riscritti scadono regolarmente e solo i file riscritti ottengono la scadenza. Sembra che FileMatch si preoccupi solo del file finalmente aperto, niente che accada prima. Indipendentemente se collocato sopra o sotto la regola di riscrittura. In altre parole, tutti i jpg, le png ora non scadono mai. Quindi, anche se vado per 'static/simple.jpgx/123456789' (è per questo che ho temporaneamente bloccato in' x? '), Viene abbinato. –