Articoli, news e pillole sul mondo LAMP e l'opensource. Pillole di C#
WordPress gestione particolare mod_rewrite
Ciao a tutti,
dopo i due articoli scritti su mod_rewrite di apache vorrei trattare di come molti applicativi, tra cui wordpress (il sistema di blogging che utilizzo per questo blog) gestiscono il mod_rewriting in modo più stretto tra apache e php.
Fondamentalmente anzichè applicare regole specifiche come quelle trattate nei precedenti articoli es:
RewriteEngine On
….
….
RewriteRule ^([^/]+)/servizi/service.php?lang=$1 [L]
Utilizzano queste uniche regole:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php
In pratica le regole che WordPress fa inserire nel file .htaccess provvedono a fare un check se il file o la directory richiesta esiste, in tal caso apache richiede la risorsa reale e presente fisicamente, altrimenti redireziona alla index.php di wordpress.
Questa pagina di fatto si occupa, in base a come è settato l’applicativo da admin (c’è un wizard molto comodo che vi allego, forse un po’ piccola…
)

In pratica si imposta come WordPress deve trattare e gestire gli URL. A quel punto è l’applicativo stesso che si occupa di fare il parsing della variabile $_SERVER['REQUEST_URI'] (almeno credo che usino questa, al massimo ne utilizzano una simile
) e di generare on the fly i link corretti.
Questo tipo di gestione da realizzare è molto più flessibile ma anche più complicata in quanto richiede un notevole sforzo di parsing degli indirizzi. Soluzione MOLTO valida per applicativi completi e liberamente scaricabili come WordPress ma poco utile per siti web custom.
Ciao a tutti,
Max
info[AT]massimo-caselli[DOT]com
| Stampa l'articolo | Questo articolo è stato pubblicato da maxgrante il 23 January 2006 alle 10:56, ed è archiviato come Apache, Webserver, Opensource World, PHP il turbo nel web. Puoi seguire i commenti a questo post attraverso RSS 2.0. Puoi pubblicare un commento o segnalare un trackback dal tuo sito. |