• User

    Url Rewrite

    Ho scritto e pubblicato nella root principale del sito, il file .htaccess per ottenere la riscrittura dell'indirizzo dinamico in statico.
    Premetto che prima di farlo ho fatto delle ricerche sul forum.
    L'obiettivo è quello di riscrivere l'url dinamico:
    http://www.nomesito.it/pagina.php?id=elenco

    nel seguente url statico:
    http://www.nomesito.it/pagina/elenco.htm

    Il codice, non funzionante, è il seguente:

    RewriteEngine On
    RewriteBase /
    RewriteRule ^pagina/(.*).htm$ pagina.php?id=$1

    Se, invece, al posto della / metto un altro carattere, ad esempio un underscore, il codice diventa perfettamente funzionante:

    RewriteEngine On
    RewriteBase /
    RewriteRule ^pagina_(.*).htm$ pagina.php?id=$1

    Perchè nel primo caso, di mio interesse, mi viene restituito dal browser un codice 404 page not found?

    Ciao,
    Francesco


  • User

    Non c'è nessuno che può darmi una mano?

    Grazie infinite,
    Francesco


  • User Attivo

    @Frank said:

    Ho scritto e pubblicato nella root principale del sito, il file .htaccess per ottenere la riscrittura dell'indirizzo dinamico in statico.
    Premetto che prima di farlo ho fatto delle ricerche sul forum.
    L'obiettivo è quello di riscrivere l'url dinamico:
    http://www.nomesito.it/pagina.php?id=elenco

    nel seguente url statico:
    http://www.nomesito.it/pagina/elenco.htm

    Il codice, non funzionante, è il seguente:

    RewriteEngine On
    RewriteBase /
    RewriteRule ^pagina/(.*).htm$ pagina.php?id=$1

    Se, invece, al posto della / metto un altro carattere, ad esempio un underscore, il codice diventa perfettamente funzionante:

    RewriteEngine On
    RewriteBase /
    RewriteRule ^pagina_(.*).htm$ pagina.php?id=$1

    Perchè nel primo caso, di mio interesse, mi viene restituito dal browser un codice 404 page not found?

    Ciao,
    Francesco

    RewriteEngine On
    RewriteRule ^pagina/([^/]+).htm pagina.php?id=$1

    questo file htaccess devi posizionarlo nella Root,
    Ciao


  • User

    Stessa situazione.
    Se posiziono nella root il file .htaccess con il codice che mi hai suggerito, e cioè:

    RewriteEngine On
    RewriteRule ^pagina/([^/]+).htm pagina.php?id=$1

    Non funziona.

    Se, invece, metto, sempre nella root, il .htaccess con il questo codice:

    RewriteEngine On
    RewriteRule ^pagina_([^/]+).htm pagina.php?id=$1

    Funziona!
    In pratica, il mod rewrite si attiva se al posto della / metto un'altro carattere.
    Inutile dirvi che sto impazzendo.
    Comincio a pensare che la colpa sia dell'hoster (aruba).

    Se qualcuno ha qualche dritta da darmi (ho già scritto al'assistenza, ma non credo che ci possa contare molto), sarei molto contento.

    Grazie,
    Francesco


  • Super User

    RewriteRule ^pagina_(.*).htm$ pagina.php?id=$1

    non capisco questo \

    prova a toglierlo e quindi:
    RewriteRule ^pagina_(.*).htm$ pagina.php?id=$1


  • User

    Tymba, non funziona lo stesso.
    L'assistenza di Aruba mi ha risposto dicendomi che non è compito loro ottimizzare il codice!!!

    Chiedo aiuto a tutti (non so più come fare) e soprattutto a chi è su Aruba.

    Mi confermate che non ci sono errori nel codice?
    C'è qualcosa di particolare su Aruba?

    Grazie a chi può aiutami.

    Ciao,
    Francesco