• Super User

    [pillolina] il mod rewrite questo sconosciuto

    Viste le ultime richieste su questo argomento forse è il caso di scrivere due righe che spiegano per lo meno i concetti base.

    (spero che altri più esperti di me vogliano completare questo inizio d'opera in modo da renderlo completo).

    1. cos'è e come funziona.

    Il mod rewrite o url rewriting è una direttiva che viene data al server web APACHE che permette di trasformare un url in un'altra seguendo delle regole di sintassi ben precise. Quindi, quando un utente fa una richiesta al webserver con un url che risponde ad una delle direttive specificate nel mod rewrite, il server apache risponde elaborando la richiesta e restituendo il risultato specificato nella regola.
    L'elaborazione avviene soltanto in fase di richiesta tramite la barra degl'indirizzi del browser dell'utente e NON modifica il codice di alcuno script variando i link inseriti nelle pagine.

    1. dove lo posso usare

    le regole di url rewriting devono essere inserite in un file di testo chiamato .htaccess che deve essere inserito nella root del sito.
    Il webserver in grado di rispondere a queste direttive è SOLAMENTE apache.

    1. come creare le regole

    le regole vengono create secondo questa sintassi:

    
    
    # il carattere cancelletto permette di inserire una riga di commento come questa
    
    #inizio della sezione di url rewriting
    RewriteEngine on
    
    #esempio
    RewriteRule ^(.*).htm$ $1.php
    
    

    questa semplicissima regola permette di trasformare tutte le richieste di pagine htm in pagine php.
    questo vuol dire che potete creare un sito in php ma far apparire all'utente una pagina htm.
    esempio:

    alla richiesta:
    xhttp:www,miosito.it/index.htm

    il webserver risponderà con l'output generato dalla pagina
    xhttp:www,miosito.it/index.php

    il carattere ^ definisce l'inizio della stringa da elaborare
    il carattere $ definisce la fine della stringa da elaborare

    [fine prima parte della pillolina]