Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    mod_rewrite: aiuto per la regex e per la struttura

    Salve ragazzi. Vorrei implementare un sistema di mod_rewrite nel mio sito.

    Non ho ben chiara la struttura che dovrà avere l'url. So solo che dovrà avere, immediatamente l'host, la lingua:

    www.miosito.com/lang/...

    Dopo la lingua che ci metto?

    Il nome della pagina può essere un nome qualsiasi (è il nome del modulo) e può avere qualunque parametro non identificabile a priori. Avete suggerimenti?
    Io avevo pensato ad una cosa del genere:

    http://www.miosito.com/lang/page/oth...her-params/ecc

    Il problema però è che non so come rendere elastica la regex cioè creare una specie di while che associ la coppia nome = valore.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  2. #2
    Ok, mi sono letto anche la pillola che c'è sul forum. Però cmq non so come far funzionare il tutto. La regola dovrebbe essere qualcosa del genere:

    RewriteRule ^(2lettere)/(nome_pagina)/(parametri_opzionali).htm

    che dovrebbe essere poi trasformata in questo modo:

    $2.php?lang=$1&other_params=$3

    Qualcuno che mi aiuta con la regex?
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  3. #3
    Se questo "(2lettere)/(nome_pagina)/(parametri_opzionali).htm" è il fac-simile della regexp prova con :
    codice:
    /^([a-z]{2})\/([\w.]+)(?:\/(.+))?\.htm$/i
    ----------------> <---ci metti dentro i caratteri che vuoi
    
    // ammette due casi
    // (2lettere)/(nome_pagina)/(parametri_opzionali).htm
    // (2lettere)/(nome_pagina).htm
    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  4. #4
    Perfetto! Solo la seconda parte (nome pagina) dovrebbe accettare caratteri alfanumerici - e _

    Grazie mille per l'aiuto! Sono una vera schiappa con le regex!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  5. #5
    Originariamente inviato da mircov
    Perfetto! Solo la seconda parte (nome pagina) dovrebbe accettare caratteri alfanumerici - e _
    aggiungici il meno \- con l'escape
    dA .. foto di viaggio
    L'esperienza è il tipo di insegnante più difficile.
    Prima ti fa l'esame, e poi ti spiega la lezione.

  6. #6
    Altro problema. Dovrei poter richiamare delle pagine direttamente in questo modo:

    miosito.it/lang/module/path/to/page.php

    In questo caso il mod rewrite funzionerà?

    Posso specificare più regex a seconda dei casi?

    Potrei creare una regex che si comporti in modo diverso a seconda dei casi?

    Se presente un url del tipo

    miodominio.it/lang/module/var1-val1/var2-val2/

    allora trasforma l'url in questo modo:
    miodominio.it/module.php?lang=$lang&var1=val1&var2=val2

    Se invece l'url è tipo questo:
    miodominio.it/module/path/to/file.php?lang=$lang&other=params

    lo trasforma in questo modo:

    miodominio.it/module/path/to/file.php?lang=$lang

    Questo perchè per visualizzare le pagine vorrei usare il mod rewrite (le pagine vanno indicizzate) mentre per richiamare gli script delle operazioni (per esempio per inserire un commento) vorrei usare il path normale:

    è possibile? Se non sono stato molto chiaro ditemelo che cercherò di spiegarmi meglio. Ciao!
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  7. #7
    Allora? Si possono usare più regole per il modrewrite?
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.