+ Rispondi alla Discussione
Risultati da 1 a 12 di 12

MOD REWRITE: Nascondere variabili nell' URL

Ultimo Messaggio di buccia81 il:
  1. #1
    User L'avatar di spiadadda
    Data Registrazione
    Oct 2005
    Messaggi
    147

    MOD REWRITE: Nascondere variabili nell' URL

    Ciao a tutti,
    nel mio girovagare nel web alla ricerca di informazioni sul MOD_REWRITE ho trovato un tutorial o meglio uno script on-line che trasforma gli URL dinamici in url html e fornisce anche il codice da utilizzare per il file .htacces
    Questo script è davvero molto simpatico (se un mod mi da l'OK vi posto il link così potete vederlo e utilizzarlo, se ne ritenete il caso, anche voi) e inoltre permette molte cose ed in particolare di personalizzare gli URL con l'aggiunta o la rimozioni di Keywords.

    La cosa che mi ha colpito è che permette anche di eliminare dall' URL html anche delle variabili che erano presenti nell'URL dinamico.
    Mi spiego meglio con un esempio:

    URL dinamico:
    -------------------
    http://www.mio-sito.it/directory/ind...&var2=forum-gt
    -------------------

    questo script permette di trasformare questo URL dinamico in questo modo:
    -------------------
    www.mio-sito.it/directory/forum-gt.html
    -------------------

    ovvero permette di non far comparire nell' URL la variabile numerica " var1=10 ". Fino a qui tutto OK, ma poi mi è sorto un dubbio...... cioè se utilizzo un URL html di questo tipo, come faccio a passare al mio script la variabile " var1=10 "???

    Cioè se utilizzassi, ad esempio, questo URL:
    -------------------
    www.mio-sito.it/directory/10/forum-gt.html
    -------------------
    la variabile " var1=10 " è presente nell' URL e quindi riesco a passarla alllo script, mentre utilizzando questo URL:
    -------------------
    www.mio-sito.it/directory/forum-gt.html
    -------------------

    Come si fa a passare, allo script, tale variabile???

  2. #2
    User L'avatar di Lumpi
    Data Registrazione
    Sep 2006
    Località
    Italia
    Messaggi
    127
    Ciao
    Se la variabile può essere ricalcolata dallo script (tipo il numero record) puoi anche ometterla, altrimenti credo non ci siano altre soluzioni che inserirla nell'url.
    Però non sono un guru, sentiamo anche altri

  3. #3
    User
    Data Registrazione
    Feb 2007
    Messaggi
    26
    Citazione Originariamente Scritto da spiadadda Visualizza Messaggio
    Ciao a tutti,
    nel mio girovagare nel web alla ricerca di informazioni sul MOD_REWRITE ho trovato un tutorial o meglio uno script on-line che trasforma gli URL dinamici in url html e fornisce anche il codice da utilizzare per il file .htacces
    Questo script è davvero molto simpatico (se un mod mi da l'OK vi posto il link così potete vederlo e utilizzarlo, se ne ritenete il caso, anche voi) e inoltre permette molte cose ed in particolare di personalizzare gli URL con l'aggiunta o la rimozioni di Keywords.

    La cosa che mi ha colpito è che permette anche di eliminare dall' URL html anche delle variabili che erano presenti nell'URL dinamico.
    Mi spiego meglio con un esempio:

    URL dinamico:
    -------------------
    www.mio-sito.it/directory/index.php?var1=10&var2=forum-gt
    -------------------

    questo script permette di trasformare questo URL dinamico in questo modo:
    -------------------
    www.mio-sito.it/directory/forum-gt.html
    -------------------

    ovvero permette di non far comparire nell' URL la variabile numerica " var1=10 ". Fino a qui tutto OK, ma poi mi è sorto un dubbio...... cioè se utilizzo un URL html di questo tipo, come faccio a passare al mio script la variabile " var1=10 "???

    Cioè se utilizzassi, ad esempio, questo URL:
    -------------------
    www.mio-sito.it/directory/10/forum-gt.html
    -------------------
    la variabile " var1=10 " è presente nell' URL e quindi riesco a passarla alllo script, mentre utilizzando questo URL:
    -------------------
    www.mio-sito.it/directory/forum-gt.html
    -------------------

    Come si fa a passare, allo script, tale variabile???

    mi fai avere l'idirizzo per torvare lo scrip cosi ci do un occhio?
    grazie

  4. #4
    Esperto L'avatar di osvi
    Data Registrazione
    Jul 2006
    Località
    Siena
    Messaggi
    1,077
    ciao,
    l'eliminazione dell'id puoi farla solo se puoi ricavarlo da altre parti dell'url

    mi spiego meglio:


    /news/cellulari.html -> news/index.php?cat=cellulari
    Codice PHP:
    $cat $_GET['cellulari'];
    $id mysql_fetch_row(mysql_query("SELECT idcategoria FROM categorie WHERE nome='$cat'"));
    // dovuti controlli di esistenza
    // $id[0] 
    in questo modo ti ricavi l'id a partire dal nome della categoria


    non conviene invece farlo quando il titolo potrebbe cambiare
    se io cambio
    /news/cellulari/fuori-produzione-nokia-3310.html
    in
    /news/cellulari/da-oggi-fuori-produzione-nokia-3310.html

    devo per forza fare un redirect a mano
    conviene quindi accodare l'id della notizia
    Firefox browser

  5. #5
    User L'avatar di spiadadda
    Data Registrazione
    Oct 2005
    Messaggi
    147
    Citazione Originariamente Scritto da maor68 Visualizza Messaggio
    mi fai avere l'idirizzo per torvare lo scrip cosi ci do un occhio?
    grazie
    Scusa se ti rispondo solo adesso, ma solo ora mi sono accorto del tuo post.

    Comunque il link è questo:

    http://www.mod-rewrite-wizard.com/

  6. #6
    fmm
    fmm è offline
    User L'avatar di fmm
    Data Registrazione
    Jan 2007
    Messaggi
    423
    Ciao,

    perdonate la domanda da newbie ma il modrewrite posso farlo anche su di una singola pagina?
    Se la dinamica è indicizzata bene, effettuando il mod con questo tool perdo qualcosa?
    La pagina dinamica viene automaticamente convertita o comunque rimane accessibile anche con l'utl dinamico?
    Ciao

    Dario
    Ultima modifica di fmm; 30-04-07 alle 14:10

  7. #7
    Esperto L'avatar di osvi
    Data Registrazione
    Jul 2006
    Località
    Siena
    Messaggi
    1,077
    se non fai il 301 la pagina dinamica resta indicizzata
    l'url dinamico in ogni caso resta sempre raggiungibile (fin quando non elimini il 301)

    sì puoi fare il rewrite anche solo su una pagina

    ciao
    Firefox browser

  8. #8
    fmm
    fmm è offline
    User L'avatar di fmm
    Data Registrazione
    Jan 2007
    Messaggi
    423
    Grazie per la risposta osvi. Ho convertito tramite il sito mod-rewrite una pagina di un sito fatto con joomla da index.php?option=com_wrapper&Itemid=65 a nuovo-nome.html. Come stringa da inserire nel file .htaccess mi viene indicata la seguente:

    RewriteEngine On
    RewriteRule ^nuovo-nome\.html$ /index.php?option=com_wrapper&Itemid=65 [L]

    Vorrei sapere se RewriteEngine On debbo sempre inserirlo prima di ogni RewriteRule ed un esempio pratico di un 301 da index.php?option=com_wrapper&Itemid=65 a nuovo-nome.html.

    Ho trovato un componente per joomla http://www.joomla-addons.org/compone.../redirect.html che fa il redirect 301, ma vedo che non effettua modifiche sul file .htaccess.

    Ti ringrazio in anticipo per la risposta.
    Ciao

    Dario

  9. #9
    User L'avatar di cristoff
    Data Registrazione
    Jun 2008
    Messaggi
    94
    Citazione Originariamente Scritto da osvi Visualizza Messaggio
    ciao,
    l'eliminazione dell'id puoi farla solo se puoi ricavarlo da altre parti dell'url

    mi spiego meglio:


    /news/cellulari.html -> news/index.php?cat=cellulari
    Codice PHP:
    $cat $_GET['cellulari'];
    $id mysql_fetch_row(mysql_query("SELECT idcategoria FROM categorie WHERE nome='$cat'"));
    // dovuti controlli di esistenza
    // $id[0] 
    in questo modo ti ricavi l'id a partire dal nome della categoria


    non conviene invece farlo quando il titolo potrebbe cambiare
    se io cambio
    /news/cellulari/fuori-produzione-nokia-3310.html
    in
    /news/cellulari/da-oggi-fuori-produzione-nokia-3310.html

    devo per forza fare un redirect a mano
    conviene quindi accodare l'id della notizia
    ma quindi quando si vede miosito.eu/Azienda
    e non compare Id della pagina come è stato fatto ?

    Il tutto viene da miosito.eu/pagina.php?id=2

    Io sono riuscito a mettere miosito.eu/2/Azienda

    Si può fare o no ?

    grazie

    Cri

  10. #10
    Banned L'avatar di buccia81
    Data Registrazione
    Sep 2006
    Messaggi
    230
    A parer mio quando non viene passato l'id nell'URL riscritto è perchè si usa un altro modo per estrarre le informazioni necessarie nellapagina alla quale punta l'URL.

    Per esempio... sela pagina di atterraggio vuol mostrare tutte le caratteristiche di un'azienda estraendole dal DB, è dotata di tecnologia PHP-MYSQL, e l'indirizzo che vi punta è del tipo miosito.it/nomeazienda, è possibile che (nel caso rischioso in cui i nomi delle aziende siano tutti diversi) estrarre le informazioni anche senza l'id con una query del tipo "SELECT * FROM tabella_aziende WHERE nome='$nomeazienda'.

    Ovviamente è una query semplificata. Il nome azienda va estratto dall'url riscritto e messo nella variabile $nomeazienda

    Uno sviluppo per un'altra idea,così su due piedi potrebbe essere quello di studiare un metodo con le sessioni... ma ci dovrei pensare per dire se può essere tecnicamente fattibile.


  11. #11
    User L'avatar di cristoff
    Data Registrazione
    Jun 2008
    Messaggi
    94
    Citazione Originariamente Scritto da buccia81 Visualizza Messaggio
    A parer mio quando non viene passato l'id nell'URL riscritto è perchè si usa un altro modo per estrarre le informazioni necessarie nellapagina alla quale punta l'URL.

    Per esempio... sela pagina di atterraggio vuol mostrare tutte le caratteristiche di un'azienda estraendole dal DB, è dotata di tecnologia PHP-MYSQL, e l'indirizzo che vi punta è del tipo miosito.it/nomeazienda, è possibile che (nel caso rischioso in cui i nomi delle aziende siano tutti diversi) estrarre le informazioni anche senza l'id con una query del tipo "SELECT * FROM tabella_aziende WHERE nome='$nomeazienda'.

    Ovviamente è una query semplificata. Il nome azienda va estratto dall'url riscritto e messo nella variabile $nomeazienda

    Uno sviluppo per un'altra idea,così su due piedi potrebbe essere quello di studiare un metodo con le sessioni... ma ci dovrei pensare per dire se può essere tecnicamente fattibile.


    Si l'avevo pensato pure io ma tipicamente si estrae il record con l'id e non dal nome che potrebbe avere apici o cose strane al suo interno.

  12. #12
    Banned L'avatar di buccia81
    Data Registrazione
    Sep 2006
    Messaggi
    230
    Certo.
    Ma se il sito è stato fatto personalmente e se si conosce esattamente il codice e la struttura del database, nonchè siamo a conoscenza del fatto che i nomi delle aziende sono univoci e non afflitti da caratteri strani... se ci sono tutti questi se... ... si può fare.

    Cmq sono daccordo che non sia il modo migliore.
    Un numerino in fondo ad una stringa riscritta secondo me è lasoluzione più valida.

+ Rispondi alla Discussione

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.