• User

    301 di pagine dinamiche

    Ciao a tutti,
    ho modificato il nome di un url di una pagina php che prendeva parametri in input, es. prova.php?id = 1, prova.php?id = 2, ecc.
    Posso fare una unica 301 o ne devo fare una per ogni diverso link?Se si come?
    Grazie


  • Super User

    Ne dovrebbe bastare una così:

    
    RewriteRule ^(.*)-([0-9]*).html$ /prova.php?id=$2 [L,NC]
    
    

    suppondendo che le tue pagine abbiano il nuovo link nella forma:
    testo-id.html
    e che il file prova.php sia nella root.


  • User

    @ayrton2001 said:

    Ne dovrebbe bastare una così:

    >
    RewriteRule ^(.*)-([0-9]*).html$ /prova.php?id=$2 [L,NC]
    
    >```
    suppondendo che le tue pagine abbiano il nuovo link nella forma:
    testo-id.html
    e che il file prova.php sia nella root.
     
    Grazie ayrton2001,
    il file prova.php si trova nella root, ho però un dubbio. i miei file php hanno come id un numero che non per forza è progressivo, per es. prova.php?id=154763, prova.php?id=65432 come posso fare in questo caso?
     
    e se come parametri gli passassi + variabili es. prova.php?id=65432&n_allegato=1, prova.php?id=65432&n_allegato=2 in questo caso si protrebbe fare?
     
    Ma c'è una guida per queste istruzioni regolari?
    Grazie ancora.

  • Super User

    @antcru said:

    Grazie ayrton2001,
    il file prova.php si trova nella root, ho però un dubbio. i miei file php hanno come id un numero che non per forza è progressivo, per es. prova.php?id=154763, prova.php?id=65432 come posso fare in questo caso?

    Non importa se è progressivo o no, l'importante è che sia un numero e che corrisponda al tuo id

    e se come parametri gli passassi + variabili es. prova.php?id=65432&n_allegato=1, prova.php?id=65432&n_allegato=2 in questo caso si protrebbe fare?
    [/quote]

    
    **RewriteRule ^(.*)-([0-9]*)-([0-9]*).html$ /prova.php?id=$2&n_allegato=$3 [L,NC]**
    RewriteRule ^(.*)-([0-9]*).html$ /prova.php?id=$2 [L,NC]
    
    

    in questo caso l'url sarebbe nella forma:
    testo-id-numeroallegato.html

    @antcru said:

    Ma c'è una guida per queste istruzioni regolari?
    Grazie ancora.
    Ci sono molte guide, basta cercare ;).


  • User

    Grazie mille. COn il tuo aiuto ho risolto :ciauz:


  • User Attivo

    Domanda a cui non sono riuscito a trovare risposta dopo un giorno intero di ricerche:

    **E come si fa a far sì che NON sia accessibile direttamente la pagina prova.php?id=$2, ma solo la sia corrispondente pagina statica html???

    **Ho fatto diverse prove con htaccess ma non ci sono riuscito.

    Ed è importante, ad esempio per non dare a google contenuto duplicato!!!


  • User Attivo

    Ho risolto... era da ieri che ci scancheravo!!!!

    Basta aggiungere questo:

    RewriteCond %{THE_REQUEST} ^.prova.php.$
    RewriteRule ^prova.php$ c/404.php

    In questo modo se si digita la pagina prova.php?id=$2 si viene mandati ad una pagina di errore 404.