+ Rispondi alla Discussione
Risultati da 1 a 25 di 25

Guida al mod_rewrite

Ultimo Messaggio di Panda il:
  1. #1
    Esperto L'avatar di osvi
    Data Registrazione
    Jul 2006
    Località
    Siena
    Messaggi
    1,077

    Guida al mod_rewrite

    Appena inserita su WikiGT: Guida mod_rewrite
    Vi riporto qui sotto il testo, postate liberamente le vostre richieste.

    -> Per la correzione dei (pochi ) errori potete modificare direttamente la voce sul wiki.
    -> Per chiarimenti sul contenuto della guida (relativo al contenuto stesso) potete rispondere direttamente in questo thread
    -> Per le altre richieste vi prego di aprire un nuovo thread, in modo da tenere ogni situazione separata dalle altre e tenere il forum ordinato. Grazie!

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~



    Nonostante le tonnellate di esempi e documentazione, mod_rewrite è voodoo.
    Voodoo dannatamente figo, ma sempre voodoo.
    Piccola guida al mod_rewrite - contiene le informazioni base da sapere per utilizzare questo utilissimo modulo. La guida anche se orientata ad Apache è ovviamente valida (per la parte teorica) ad IIS / ISAPI rewrite.

    INDICE:
    - Prima di cominciare
    - Uno sguardo da vicino
    - mod_rewrite in pratica
    - Per i più bravi

    Stando in linea con la filosofia del forum, questa guida non è legge ma solo un contributo alla comunità (che mi auguro ricambi, segnalando errori o ampliando le sezioni).


    __________________________________________________
    Prima di cominciare

    0.0- Requisiti
    - conoscenza base delle espressioni regolari


    __________________________________________________
    Uno sguardo da vicino

    1.0- Cosa è il mod_rewrite
    mod_rewrite è un modulo per Apache, il webserver più usato nel mondo Unix. Il modulo associa "al volo" un URL virtuale (non residente sul filesystem) ad uno reale, tramite delle regole definite nei file .htaccess

    1.1- Come si attiva

    Se sei in un hosting condiviso, non devi fare niente: il modulo è attivo di default nella maggior parte dei casi. In ogni caso prima di acquistare un piano d'hosting chiedi esplicitamente se il modulo è installato!

    Se lavori invece su un tuo server dedicato / VPS / localhost, molto probabilmente devi attivare il modulo a mano:
    - per Apache2 a2enmod rewrite come root
    - per Apache1 è necessario decommentare la linea LoadModule mod_rewrite nel file di configurazione

    Apache di default ignora i file .htaccess (e di conseguenza le tue regole!) - per farglieli leggere devi modificare la direttiva AllowOverride all'interno del file di configurazione. Ricorda di riavviare il webserver.

    1.2- La prova del nove
    Per controllare se il modulo funziona:
    Livello 1) crea una pagina .php contenente
    Codice PHP:
    <?php phpinfo(); ?>
    Richiamala dal browser e cerca nella pagina mod_rewrite sotto Loaded Modules. Se trovi la stringa, vuol dire che il modulo è caricato.
    Attenzione!! Caricato in memoria non vuol dire utilizzabile - infatti se il modulo è presente, ma i file .htaccess vengono ignorati (vedi sopra), le regole di riscrittura non funzioneranno! Per questo entra in gioco il
    Livello 2) testare se effettivamente gli indirizzi vengono riscritti: scarica questo file e segui le istruzioni contenute nell'archivo stesso.

    1.3- Struttura di un file .htaccess
    Riporto la struttura "base" di un file .htaccess contenente una semplice regola

    Codice:
    RewriteEngine On
    RewriteRule ^index.html$ fooindex.php [L]
    La prima linea attiva l'engine (va sempre inserita)
    La seconda linea specifica una regola (RewriteRule) composta da:
    • l'URL da riscrivere, tra ^ (inizio stringa) e $ (fine stringa), quasi sempre formato da espressioni regolari
    • l'URL al quale inviare la richiesta
    • parametri (tra parentesi quadre, separati da virgole)
      • L "ultimo" -> paragonabile al break, dice all'engine di fermarsi e di non controllare le altre regole
      • R=301 -> invia un header di contenuto spostato in modo permanente e crea il redirect
      • R=302 -> invia un header di contenuto spostato in modo temporaneo e crea il redirect
      • QSA "accoda query string" -> se l'URL richiesto contiene più parametri di quelli previsti, vengono accodati - utile se si vogliono mettere parametri a pagine con indirizzi riscritti (!!).
    Inserendo queste due righe in domain.tld/.htaccess, quando un utente visita domain.tld/index.html il webserver invia la pagina domain.tld/fooindex.php. L'utente non si accorge di niente.
    Deep focus:
    - se fooindex.php non esiste, l'utente vede "404 fooindex.php", anche se ha richiesto index.html
    - index.html può anche non esistere: il webserver invierà al client direttamente il file php senza neppure curarsi del file html
    __________________________________________________
    mod_rewrite in pratica

    2.0- Let's check it out!
    Procediamo per casi analizzando alcuni URL-tipo che ognuno di noi ha incontrato almeno una volta. Sono solo degli esempi, riadattabili alle proprie esigenze. Il consiglio è di leggere in modo lineare tutti i casi, e non solo la parte finale.

    Lo scenario è la sezione news di un sito.
    Ricordate che in ogni file htaccess dovete inserire, prima delle regole, la direttiva RewriteEngine On.

    2.1- Riscrittura "base"
    URL prima dell'intervento: www.domain.tld/news/index.php?id=1234
    URL dopo l'intervento: www.domain.tld/news/notizia-1234.html

    Codice:
    RewriteRule ^notizia-([0-9]+)\.html$ index.php?id=$1
    - ([0-9]+) uno o più (+) caratteri numerici da 0 a 9 ([0-9])
    - \.html indica ".html" (. è un metacarattere che vuol dire qualsiasi carattere, dobbiamo effettuare l'escape).
    - $1 viene sostituito con il valore "trovato" dalla regexp ([0-9]+)

    Ok, abbiamo tolto la querystring (hai detto niente!). Ma non è proprio il sistema più raffinato e la semantica è a 0.


    2.2- Gestire più parametri
    URL prima dell'intervento: www.domain.tld/news/index.php?id=1234&cat=recensione
    URL dopo l'intervento: www.domain.tld/news/recensione-1234.html

    Codice:
    RewriteRule ^(.+)-([0-9]+)\.html$ index.php?id=$2&cat=$1
    Consiglio: invece di usare (.+) (qualsiasi carattere in qualsiasi quantità) è più saggio usare ([^/]+) che vuol dire "qualsiasi carattere tranne lo slash in qualsiasi quantità".
    2.3- Associazioni tra ID e stringhe
    URL prima dell'intervento: www.domain.tld/news/categoria.php?id=2
    URL dopo l'intervento: www.domain.tld/news/recensioni.html

    Codice:
    RewriteRule ^([^/]+)\.html$ index.php?nomecat=$1
    Codice PHP:
    $cat $_GET['nomecat'];
    $categoria mysql_query("SELECT id FROM categorie WHERE nome='$cat'");
    if (
    mysql_num_rows($categoria)==0) {
        
    Make404(......);
    } else {
        
    $categoria mysql_num_rows($categoria);
        
    $news mysql_query("SELECT .... FROM news WHERE categoria='$categoria[0]'");
        
    ShowNews(......);

    Nota bene: è possibile eliminare l'ID contenuto nell'URL se e solo se la corrispondenza ID<->stringa è biunivoca!


    2.4- Il caso ideale
    URL prima dell'intervento: www.domain.tld/news/index.php?id=1234
    URL dopo l'intervento: www.domain.tld/news/recensioni/php6-usera-goto-1234.html

    Codice:
    RewriteRule ^([^/]+)/([^/]+)-([0-9]+)\.html$ index.php?id=$3&cat=$1&titolo=$2
    Codice PHP:
    $newsid $_GET['id']; // non serve fare il cast con (int)
    $news mysql_query("SELECT ... FROM news WHERE id='$newsid'");
    if (
    mysql_num_rows($news)==0) {
        
    Make404(......);
    } else {
        .....
        
    // supponiamo di avere in $cat la categoria letta dal database
        // e in $titolo il.. titolo ovviamente
        
    if ($cat != $_GET['cat'] || ottimizza($titolo) != $_GET['titolo']) {
           
    // è stato cambiato titolo o categoria
           
    make301('http://www.domain.tld/news/' $cat '/' $titolo '-' $newsid '.html');
        }

        
    NewsClass:ShowNews(......);

    • la funzione ottimizza deve essere la stessa usata per mostrare gli URL nella pagina con l'elenco delle news per evitare problemi di doppi-redirect e serve per eliminare spazi, caratteri accentati, ecc.
    • la funzione make301 deve inviare un header 301, un header location e bloccare lo script (con exit; )
    • la semantica di questi URL è molto buona (un file chiamato come la news contenuto in una directory correlata)
    • se la news viene spostata di categoria o rinominata, viene automaticamente generato un header 301 invece di un 404 (come su questo forum)
    => new! scarica questo esempio
    __________________________________________________
    Per i più bravi

    3.0- Quando qualcosa non funziona

    La direttiva RewriteLog permette di salvare l'output di debug di mod_rewrite su un file, ma va inserita nel file di configurazione principale di Apache, e in un hosting condiviso ciò non è possibile.

    Per vedere quali pezzi di url (e in che modo) vengono riconosciuti, basta usare uno script con questo semplice contenuto
    Codice PHP:
    <pre>
    <?php print_r($_GET);
    </
    pre>
    Codice:
    RewriteRule ^(.+)-(.+)\.html$ debugger.php?id=$1&cat=$2
    Richiamando nel browser la pagina test-123.html:
    Array
    (
    [id] => test
    [cat] => 123
    )
    capiremo di aver invertito $1 con $2..


    3.1- Ottimizzazioni
    Tre consigli:
    1. se possibile, caricare le regole nella configurazione (ad ogni accesso, il file .htaccess viene aperto, letto, parsato, chiuso..)
    2. evitare trasformazioni stupide (es .php -> .html) - ai fini dell'ottimizzazione non cambia assolutamente niente
    3. usare [L] (va inserito quasi sempre) per non far testare a mod_rewrite le regole successive.
    Ultima modifica di osvi; 06-04-08 alle 22:04
    Firefox browser

  2. #2
    L'avatar di Giorgiotave
    Data Registrazione
    Oct 2004
    Località
    Monasterace
    Messaggi
    37,430
    Visita il canale Youtube di Giorgiotave
    Ottimo Lavoro Osvi

    Mettiamo in rilievo per un pochino

  3. #3
    Esperto L'avatar di Andrez
    Data Registrazione
    Mar 2005
    Località
    Sull'isola del giorno prima
    Messaggi
    8,241
    Complimenti !

  4. #4
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    786
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    che guidona thx ^_^
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  5. #5
    Utente Premium L'avatar di stable
    Data Registrazione
    Nov 2006
    Località
    Sicilia
    Messaggi
    1,467
    Ottima ed utilissima guida. Ancor di più l'idea di far scaricare l'esempio!
    Non è tutto ora ciò che luccica!

  6. #6
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    786
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    nell'esempio non usi il 301 è un errore o è fatto apposta?
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  7. #7
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    786
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    hai caricatoo tutti i file? lo vedi nell'ftp il file htaccess?

    lo script funziona per funzionare

    la mia domanda è sempre:

    Citazione Originariamente Scritto da massimux Visualizza Messaggio
    nell'esempio non usi il 301 è un errore o è fatto apposta?
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  8. #8
    User
    Data Registrazione
    Sep 2005
    Località
    Sassari
    Messaggi
    25
    Citazione Originariamente Scritto da massimux Visualizza Messaggio
    hai caricatoo tutti i file? lo vedi nell'ftp il file htaccess?
    Si si lo vedo...

  9. #9
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    786
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    mi dai l'indirizzo? magari apri un nuovo topic in questa sezione in modo da non "sporcare"(andare fuori tema) la guida di osvi
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  10. #10
    User
    Data Registrazione
    Apr 2005
    Messaggi
    36
    ottima guida anche se su IIs le cose sono davvero tristi, ma tristi tristi...
    in teoria funziona tutto, si installa Isapi rewrite, funziona benissimo ad ogni test e legge pure le espressioni regolari validandole...

    ma non cambia un url che sia uno!!

    Voto Apache e Linux per queste cose, su altro hosting Linux con Wordpress funzionavano tutte le combinazioni di url rewrite possibili.

    Mi sà che su Windows 2003 e IIs è come andare con la Ferrari sullo sterrato, non è il suo!

  11. #11
    Esperto L'avatar di osvi
    Data Registrazione
    Jul 2006
    Località
    Siena
    Messaggi
    1,077
    grazie massimux per avermelo fatto notare :-)

    ho aggiornato lo ZIP.. il 301 era già mezzo inserito (nel file funzioni.php), chissà a che pensavo..

    ho messo sia quello che controlla il titolo modificato, sia quello per gli url "prima del rewrite"

    ciao!
    Firefox browser

  12. #12
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    786
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    lieto di esserti stato di aiuto avevo notato
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  13. #13
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    786
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    ma se per il redirect301 avessimo usato [R=301] nell' .htaccess?
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  14. #14
    Utente in Attesa di Registrazione
    Data Registrazione
    Jul 2007
    Località
    Ferrara
    Messaggi
    67
    Salve a tutti,
    ottima la guida, per il mio nuovo sito ho creato il file htacces..il redirect funziona nel senso però che mi ridireziona tutto all'home page..ad esempio

    RewriteRule ^index.php?option=com_content&task=view&id=55&Item id=80$ azienda.php [L,R=301]

    può andare bene un record scritto così?
    Grazie a tutti comunque

  15. #15
    User
    Data Registrazione
    Feb 2006
    Messaggi
    99
    scusate la domanda stupida questa guida funziona solo per pagine php? se si per pagine asp come faccio?

  16. #16
    User Newbie
    Data Registrazione
    Jun 2008
    Località
    Lecco
    Messaggi
    8
    Segui digitos su Twitter Aggiungi digitos su Google+ Aggiungi digitos su Facebook Aggiungi digitos su Linkedin
    Disperazione totale.
    Non riesco a far funzionare nemmeno un esempio.

    Sito hosting linux su Aruba.
    Non ho ancora capito se questi esempi possono funzionare su Aruba. Sul forum ognuna dice la sua. Non ho trovato un'idea comune sulla compatibilità con Aruba. Boh...

    Ho provato con il file di test ma dice "Test fallito".



    aiuto!!! per favore

  17. #17
    User Newbie
    Data Registrazione
    Jun 2008
    Località
    Lecco
    Messaggi
    8
    Segui digitos su Twitter Aggiungi digitos su Google+ Aggiungi digitos su Facebook Aggiungi digitos su Linkedin
    Ho provato anche sulla mia VPS ma non riesco a farlo funzionare sto maledetto .htaccess nonostate il modulo mod_rewrite si attivo

    Al punto 1.1 quando si dice

    Se lavori invece su un tuo server dedicato / VPS / localhost, molto probabilmente devi attivare il modulo a mano:
    - per Apache2 a2enmod rewrite come root

    tradotto nella pratica?

    grazie


  18. #18
    User
    Data Registrazione
    Apr 2008
    Messaggi
    43
    non ho capito i vantaggi che si hanno ad usare questa tecnica

  19. #19
    Moderatore L'avatar di massimux
    Data Registrazione
    Apr 2006
    Località
    Napoli
    Messaggi
    786
    Segui massimux su Twitter Aggiungi massimux su Google+ Aggiungi massimux su Linkedin
    Vi rispondo una sola volta... ma la prossima volta sarebbe meglio aprire un nuovo topic in modo da poter rispondere in modo preciso...

    @digitos

    Allora aruba non ricordo se permetta l'URLrewrite ovviamente puoi vedere nelle loro faq.
    Il comando da dare sulla tua VPS per attivare il modulo apache rewrite è molto semplice:
    Accedi alla shell del tuo VPS con account root
    digiti il seguente comando: "apache2 a2enmod rewrite".

    @Totem80

    I vantaggi li ritrovi sul lato SEO e sulla praticità del sito. tutto qui
    MODPHP-MySQLPerchè non ti fermi?
    Da bravo Moderatore, Modero con Moderazione il Moderabile

  20. #20
    Esperto L'avatar di osvi
    Data Registrazione
    Jul 2006
    Località
    Siena
    Messaggi
    1,077
    attenzione, il comando corretto (testato su Debian) è
    Codice:
    a2enmod rewrite
    (apache2 enable module rewrite)

    guarda in phpinfo(). tra i moduli di apache vedi mod_rewrite caricato?
    se no, attivalo con quel comando
    se si, controlla la direttiva AllowOverride (su None ignora completamente i .htaccess )
    Firefox browser

  21. #21
    User L'avatar di cristoff
    Data Registrazione
    Jun 2008
    Messaggi
    94
    nel .htaccess è possibile usare le funzioni RewriteEngine e il redirect 301 contemporaneamente ?

    Vedi discussione

    giorgiotave.it/forum/mod-rewrite-e-tecniche-di-url-redirect/114180-redirect-permanent-non-funziona.html#post656036

  22. #22
    User L'avatar di generale70
    Data Registrazione
    Jun 2006
    Località
    Catanzaro
    Messaggi
    15

    Problemi con Mod Rewrite

    Ho letto con attenzione la guida di OSVI e mi voglio complimentare per il lavoro svolto. Credevo di poterla mettere in pratica ma non ci sono riusciuto. Premetto che non sono esperto in materia.

    Spero che OSVI mi possa aiutare a risolvere il mio problema.

    Io Gestisco un sito (social network) creato con il CMS SOCIALENGINE formato da una base + diversi plugins (es. blog, polls, album, group ecc..)
    Vorrei scrivere il file .htaccess in modo che mi faccia la rewrite delle pagine da php in .htm o . html oppure come directory per tutti i plugins.

    Prendo ad esempio il plugin GROUP
    Il link originale è miosito.com/group.php?group_id=10
    dove group_id=10 corrisponde al titolo "SEO - Social Network e PR"
    Il CMS SOCIALENGINE ha già nel pannello amministratore una utility per riscrivere gli indirizzi. Il problema è che li riscrive non tenendo conto dei titoli. Per esempio nel caso indicato la url viene riscritta in questo modo:
    miosito.com/group/10/
    La cosa è ovviamente molto limitante.
    Io ho bisogno di riscrivere l'url in questa maniera
    miosito.com/group/10/SEO - Social Network e PR.htm
    Cioè voglio che mi indichi per intero il titolo del gruppo.
    Lo stesso problema che ho con il plugin group è anche con tutti gli altri plugins.

    Mi potete aiutare a creare il file .htaccess per tutti i plugins?

    Vi prego di aituarmi

    Saluti e grazie in anticipo

  23. #23
    User Newbie
    Data Registrazione
    Feb 2010
    Messaggi
    2

    risposta

    Ciao ragazzi, ho letto questo post molto interezzante, ma ho riscontrato un problema al punto 2.4

    Vorrei convertire l'url dei miei articoli senza però far visualizzare l'id

    Come posso fare?
    Ho provato a togliere l'id ma cosi facendo la variabile id viene eliminata, invece a me interessa .

    Per esempio, ho un menu di questo tipo
    Codice PHP:
    <a href="pagina-uno.html">Pagina uno</a>
    <
    a href="pagina-due.html">Pagina due</a>
    <
    a href="pagina-tre.html">Pagina tre</a
    nel file htaccess ho inserito

    RewriteEngine On
    #RewriteRule ^([^/]+)\.html$ index.php?page=$1

    Se clicco sul pulsante si apre la pagina corretta, pero si perde l'id.

    Spero che avete capito il problema, se volete posso linkare la pagina.

    Ciao

  24. #24
    User Newbie
    Data Registrazione
    Feb 2012
    Località
    Napoli
    Messaggi
    4
    Salve, sto cercando di creare un plugin per l'urlrewrite per chi non usa cms come wordpress e joomla. Per far questo avrei bisogno di capire come questi ultimi funzionano. Ho visto che worspress non scrive le regole nell'htaccess tranne alcune ma legge tutto dal db e a runtime le modifica (non so se ho capito bene). Adesso vorrei, ad esempio, creare delle regole in base a submit da un form di ricerca a piu campi. In base ai campi selezionati costruire una url friendly e dinamica.
    Scrivendo le regole direttamente nell'htaccess, ho qualcosa di questo tipo:

    #PER CONTRATTO TIPOLOGIA PROVINCIA E PAGINAZIONE
    RewriteCond %{REQUEST_URI} ricerca_avanzata.php$
    RewriteCond %{QUERY_STRING} ^provincia=([A-Za-z1-9\+]+)&VF=([A-Za-z1-9\+]+)&tipologia=([A-Za-z1-9-\+]+)&superficie=0&NRIF=&submit2=VAI&pag=([1-9\+]+)$
    RewriteRule ^(.*)$ /panoramaimmobiliare/%2-di-%3-a-%1-pagina-%4? [R=301,L]
    #operazione inversa della regola di sopra
    RewriteRule ^([^/]*)-di-([^/]*)-a-([^/]*)-pagina-([^/]*)$ ricerca_avanzata.php?provincia=$3&VF=$1&tipologia= $2&superficie=0&NRIF=&submit2=VAI&pag=$4$ [L]

    #PER CONTRATTO TIPOLOGIA E PROVINCIA
    RewriteCond %{REQUEST_URI} ricerca_avanzata.php$
    RewriteCond %{QUERY_STRING} ^provincia=([A-Za-z1-9\+]+)&VF=([A-Za-z1-9\+]+)&tipologia=([A-Za-z1-9-\+]+)&superficie=0&NRIF=&submit2=VAI$
    RewriteRule ^(.*)$ /panoramaimmobiliare/%2-di-%3-a-%1? [R=301,L]
    #operazione inversa della regola di sopra
    RewriteRule ^([^/]*)-di-([^/]*)-a-([^/]*)$ ricerca_avanzata.php?provincia=$3&VF=$1&tipologia= $2&superficie=0&NRIF=&submit2=VAI$ [L]

    #PER TIPOLOGIA PROVINCIA E PAGINAZIONE
    RewriteCond %{REQUEST_URI} ricerca_avanzata.php$
    RewriteCond %{QUERY_STRING} ^provincia=([A-Za-z1-9\+]+)&VF=0&tipologia=([A-Za-z1-9-\+]+)&superficie=0&NRIF=&submit2=VAI&pag=([1-9\+]+)$
    RewriteRule ^(.*)$ /panoramaimmobiliare/%2-a-%1-pagina-%3? [R=301,L]
    #operazione inversa della regola di sopra
    RewriteRule ^([^/]*)-a-([^/]*)-pagina-([^/]*)$ ricerca_avanzata.php?provincia=$2&VF=0&tipologia=$ 1&superficie=0&NRIF=&submit2=VAI&pag=$3$ [L]

    #PER TIPOLOGIA E PROVINCIA
    RewriteCond %{REQUEST_URI} ricerca_avanzata.php$
    RewriteCond %{QUERY_STRING} ^provincia=([A-Za-z1-9\+]+)&VF=0&tipologia=([A-Za-z1-9-\+]+)&superficie=0&NRIF=&submit2=VAI$
    RewriteRule ^(.*)$ /panoramaimmobiliare/%2-a-%1? [R=301,L]
    #operazione inversa della regola di sopra
    RewriteRule ^([^/]*)-a-([^/]*)$ ricerca_avanzata.php?provincia=$2&VF=0&tipologia=$ 1&superficie=0&NRIF=&submit2=VAI$ [L]

    #PER TIPOLOGIA CONTRATTO E PAGINAZIONE
    RewriteCond %{REQUEST_URI} ricerca_avanzata.php$
    RewriteCond %{QUERY_STRING} ^provincia=0&VF=([A-Za-z1-9\+]+)&tipologia=([A-Za-z1-9-\+]+)&superficie=0&NRIF=&submit2=VAI&pag=([1-9\+]+)$
    RewriteRule ^(.*)$ /panoramaimmobiliare/%2-in-%1-pagina-%3? [R=301,L]
    #operazione inversa della regola di sopra
    RewriteRule ^([^/]*)-in-([^/]*)-pagina-([^/]*)$ ricerca_avanzata.php?provincia=0&VF=$2&tipologia=$ 1&superficie=0&NRIF=&submit2=VAI&pag=$3$ [L]

    #PER TIPOLOGIA E CONTRATTO
    RewriteCond %{REQUEST_URI} ricerca_avanzata.php$
    RewriteCond %{QUERY_STRING} ^provincia=0&VF=([A-Za-z1-9\+]+)&tipologia=([A-Za-z1-9-\+]+)&superficie=0&NRIF=&submit2=VAI$
    RewriteRule ^(.*)$ /panoramaimmobiliare/%2-in-%1? [R=301,L]
    #operazione inversa della regola di sopra
    RewriteRule ^([^/]*)-in-([^-]*)$ ricerca_avanzata.php?provincia=0&VF=$2&tipologia=$ 1&superficie=0&NRIF=&submit2=VAI$ [L]

    #PER PROVINCIA E CONTRATTO E PAGINAZIONE
    RewriteCond %{REQUEST_URI} ricerca_avanzata.php$
    RewriteCond %{QUERY_STRING} ^provincia=([A-Za-z1-9\+]+)&VF=([A-Za-z1-9\+]+)&tipologia=0&superficie=0&NRIF=&submit2=VAI&pag= ([1-9\+]+)$

    RewriteRule ^(.*)$ /panoramaimmobiliare/%1-%2-pagina-%3? [R=301,L]
    #operazione inversa della regola di sopra
    RewriteRule ^([^/]*)-([^/]*)-pagina-([^/]*)$ ricerca_avanzata.php?provincia=$1&VF=$2&tipologia= 0&superficie=0&NRIF=&submit2=VAI&pag=$3$ [L]

    ecc.ecc.

    Il problema è che queste sono solo la combinazione di 3 parametri capirete che se i parametri coinvolti sono di piu la cosa diventa esponenziale e di difficile gestione.

    Vorrei quindi creare qualcosa che permetta di lavorare come wordpress.

    Qualcuno ha indicazioni e info utili a questo fine?

    Grazie.

  25. #25
    User
    Data Registrazione
    Apr 2006
    Località
    Milano
    Messaggi
    23
    Volevo segnalare che nella sezione 1.2- La prova del nove

    il file
    "Livello 2) testare se effettivamente gli indirizzi vengono riscritti: scarica questo file e segui le istruzioni contenute nell'archivo stesso."

    non è raggiungibile.

    Poi volevo chiedere come mai su hosting Linux Aruba con phpinfo non trovo la voce Loaded Modules

    Ciao e grazie

+ Rispondi alla Discussione

LinkBacks (?)

  1. 10-08-07, 09:06

Tag per Questa Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice [VIDEO] è Attivato
  • Il codice HTML è Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.