Il file .htaccess
Attivato il Mod Rewrite dobbiamo spiegargli quali url riscrivere e come riscriverle.
Per far questo creiamo un nuovo file di testo dentro la cartella che conterrà le pagine con le url da riscrivere e rinominiamolo .htaccess (importante: il nome del file non deve terminare col .txt).
Per esempio se avessimo un sito così strutturato:
www
- index.php
- mia_pagina.php
- cartella “articoli”
- - view.php
Per accedere normalmente alla pagina view.php dovremmo usare un url del genere:
www.mio_sito.ext/articoli/view.php?id=45 (ho supposto di richiamare gli articoli in base all’id)
il nostro scopo sarà quello di trasformare quell’url in
www.mio_siot.ext/articoli/45/titolo_articolo.html
per far ciò inseriamo dentro la cartella articoli il nostro file .htaccess e scriviamoci queste semplici righe:
RewriteEngine On
RewriteRule ^(.+)/(.+).html view.php?id=$1 [L]
Cerchiamo di capire cosa abbiamo fatto:
con RewriteEngine On diciamo al server di avviare la riscrittura; quindi convertiamo l’url statica nella relativa url dinamica.
Nel caso di sopra abbiamo usato una semplice espressione regolare. Sarebbe stato identico scrivere:
RewriteRule ^45/titolo_articolo.html view.php?id=45 [L] (ma pensate di farlo per 1000 articoli???)
Il valore del parametro id ossia 45 è contenuto in $1. Per riottenere titolo_articolo dovremmo recuperare la variabile successiva in questo modo: $2.
Addentrarci nell’espressioni regolari esula dall’intento di questo articolo. Possiamo dire semplicemente che con la dicitura (.+) indichiamo qualsiasi carattere e con $1,2,3,.. ne recuperiamo il relativo contenuto.
Es:
www.mio_siot.ext/articoli/37/i+nuovi+computer.html
Applicando:
RewriteRule ^(.+)/(.+).html view.php?id=$1&tit=$2 [L]
otterremo view.php?id=37&tit=i+nuovi+computer
Centinaia di ragazzi e ragazze ti stanno aspettando.
Vai su Lovebits, la sezione incontri gratis di Stragulp!, e vota l'utente piú affascinante.
E se fossi proprio tu a vincere la classifica?