Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Digital Marketing
    4. SEO
    5. Mod_rewrite: riscrittura di link dinamici complessi
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • M
      maino User • 31 gen 2011, 12:33 ultima modifica di

      Mod_rewrite: riscrittura di link dinamici complessi

      Ciao a tutti, :smile5:

      vorrei chiarire un mio dubbio riguardo le regole di riscrittura (mod_rewrite) da inserire nel file .htaccess.

      Supponendo che il file in questione sia ospitato su un forum, come si può fare in modo che una richiesta del tipo:

      www . mioforum.it/discussione.php?id=356

      sia associata invece al link:

      www . mioforum.it/interazione-php-e-mysql

      Mi spiego: in una tabella di database MySql ho un elenco delle discussioni le cui colonne sono caratterizzate da ID, nome discussione e numero di messaggi postati.

      La pagina discussione.php, in base all?ID che passo mediante $_GET[id], ad esempio 356 mi restituisce la riga:

      356, Interazione php e mysql, 55 (id, nome, messaggi)

      Come potrei impostare una rewrite_rule tale che scrivendo o cliccando sul link:

      www . mioforum.it/interazione-php-e-mysql

      mi ridirezioni alla pagina:

      www . mioforum.it/discussione.php?id=356

      Spero che non sia necessario scrivere una regola per ogni discussione esistente in database...

      Non penso che un forum articolato come GT, ad esempio, effettui la riscrittura dei link con eccessivi oneri computazionali.

      Come al solito, ringrazio anticipatamente chiunque avrà la bontà di rispondermi!

      A presto! :gthi:
      Maino

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
        Caricamento altri post
        Rispondi
        • Topic risposta
        Effettua l'accesso per rispondere
        • Da Vecchi a Nuovi
        • Da Nuovi a Vecchi
        • Più Voti
         

      • A
        ayrton2001 Super User • 5 feb 2011, 00:09 ultima modifica di

        Ciao Maino,
        ci sono diverse cose da valutare.
        Un buon punto di partenza potrebbe comunque essere questo:

        link: www . mioforum.it/interazione-php-e-mysql-356

        htaccess:

        
        RewriteEngine On
        RewriteBase /
        RewriteRule ^(.*)-([0-9]*)$ /discussione.php?id=$2
        
        
        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • M
          maino User • 9 feb 2011, 11:09 ultima modifica di

          Ciao ayrton2001, :smile5:

          come prima cosa ti ringrazio per la risposta. Dopo il tuo post, ci siamo messi al lavoro ed abbiamo concretizzato quanto segue.

          Adesso digitando:

          www . taff.biz/x/5

          (con "x" uguale a qualsiasi valore) si viene reindirizzati al topic avente id=5. Lo step successivo sarà pertanto tentare di trasformare la "x" nel nome del topic, magari eliminando quel 5 poco SEO-friendly. Suggerimenti?

          Per quanto riguarda le discussioni, digitando:

          www . taff.biz/x/614/46/1

          si viene reindirizzati alla discussione specifica. Anche in questo caso, il valore assegnato ad "x" non influisce sul risultato del reindirizzamento. Discorso analogo per l'id topic (nell'esempio che ti ho fatto è il n°46) che può essere qualunque valore. La cosa strana è che al posto del 46 possiamo mettere qualsiasi valore numerico, ma nulla di più... Pena il non corretto reindirizzamento della discussione.

          Se hai/avete suggerimenti, sono sempre ben accetti.
          Per ora è tutto, grazie e a presto! :gthi:
          Maino

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • A
            ayrton2001 Super User • 9 feb 2011, 13:41 ultima modifica di

            @Maino said:

            Adesso digitando:

            www . taff.biz/x/5

            (con "x" uguale a qualsiasi valore) si viene reindirizzati al topic avente id=5. Lo step successivo sarà pertanto tentare di trasformare la "x" nel nome del topic, magari eliminando quel 5 poco SEO-friendly. Suggerimenti?

            Eliminare l'id complica la situazione, dovresti fare il rewrite tramite server script, inoltre si può andare incontro a varie problematiche. Io lo lascerei, magari sostituendo "/5" con "-5".

            @Maino said:

            Per quanto riguarda le discussioni, digitando:

            www . taff.biz/x/614/46/1

            si viene reindirizzati alla discussione specifica. Anche in questo caso, il valore assegnato ad "x" non influisce sul risultato del reindirizzamento. Discorso analogo per l'id topic (nell'esempio che ti ho fatto è il n°46) che può essere qualunque valore. La cosa strana è che al posto del 46 possiamo mettere qualsiasi valore numerico, ma nulla di più... Pena il non corretto reindirizzamento della discussione.
            Se la regola è "([0-9]*)" è normale che accetti solo numeri

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • M
              maino User • 11 mar 2011, 14:17 ultima modifica di

              @ayrton2001 said:

              Eliminare l'id complica la situazione, dovresti fare il rewrite tramite server script, inoltre si può andare incontro a varie problematiche. Io lo lascerei, magari sostituendo "/5" con "-5".

              Ciao ayrton2001! :smile5:

              Scusami se non mi sono più fatto sentire, ma desideravo avere qualche novità per non rischiare di tediare chi ci legge. Ieri finalmente abbiamo reso definitive le modifiche alle rules e gli URL ora presentano questa forma:

              taff.biz/nome-topic/x-y-nome-della-discussione/z

              Come vedi abbiamo optato per la strada meno difficoltosa ed abbiamo seguito il tuo consiglio ricorrendo ai "trattini" al posto degli "slash". Questi ultimi, infatti, avrebbero potuto causare anche un'errata interpretazione da parte degli spiders (lo slash generalmente viene interpretato come cartella).

              Sarebbe interessante riuscire a capire se e quanto questi cambiamenti possano incidere in termini SEO. Sicuramente un beneficio in ottica W3C c'è stato come avrò modo di dimostrare in questo thread:

              giorgiotave.it/forum/w3c-usabilita-accessibilita-qualita/132902-2-strani-errori-di-validazione-w3c-cannot-continue-because-previous-errors.html

              Dopo l'introduzione delle rules siamo scesi di diverse posizioni. :sun:

              Per ora è tutto.
              Grazie ancora per i consigli e a presto! :gthi:
              Maino

              PS: Perdonate se non formatto questo post, ma le ultime volte che ho provato a farlo mi sono visto eliminare tutta la formattazione :tongueout:

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • A
                ayrton2001 Super User • 14 mar 2011, 03:42 ultima modifica di

                Hai fatto un redirect 301 dalle vecchie url alle nuove?

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • M
                  maino User • 14 mar 2011, 10:00 ultima modifica di

                  Ciao ayrton2001, :smile5:

                  no... non lo ho ancora fatto. So che è molto importante per evitare la creazione di contenuti duplicati, tuttavia non mi è ancora molto chiaro come intervenire.

                  Hai suggerimenti in merito?

                  Pensi sia opportuno agire a livello di Strumenti per WebMasters di Google, oppure implementare qualcosa a livello di php (come suggerito nella vostra guida wiki), oppure ancora pensi sia meglio intervenire sull'.htaccess?

                  Grazie mille! :gthi:
                  Maino

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • A
                    ayrton2001 Super User • 19 mar 2011, 14:01 ultima modifica di

                    Ciao Maino,
                    Devi fare un redirect 301 dalle vecchie pagine alle nuove.
                    Lo puoi realizzare come preferisci: htaccess oppure php.

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • M
                      maforast User Newbie • 8 mar 2012, 13:35 ultima modifica di

                      @ayrton2001 said:

                      Ciao Maino,
                      Devi fare un redirect 301 dalle vecchie pagine alle nuove.
                      Lo puoi realizzare come preferisci: htaccess oppure php.

                      Ciao considerando che ho dei link dinmici con query string e li sto riscrivendo in indirizzi seo friendly, come faccio a fare il redirect 301 da php per non avere doppi link?

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      Caricamento altri post
                      Rispondi
                      • Topic risposta
                      Effettua l'accesso per rispondere
                      • Da Vecchi a Nuovi
                      • Da Nuovi a Vecchi
                      • Più Voti