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. Coding e Sistemistica
    4. Coding
    5. Errore con il mod_rewrite
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • G
      giacomo79 User Attivo • ultima modifica di

      Errore con il mod_rewrite

      Salve a tutti, sto impazzendo con il mod_rewrite.
      Non riesco a capire perchè scrivendo queste regole nel file .htaccess la prima mi funziona e la seconda no... :arrabbiato:

      
      RewriteEngine on
      RewriteRule ^prodotti/([^/][0-9]+)-([^/]+).html index.php?m=Default&a=product_info&products_id=$1&%{QUERY_STRING}
      RewriteRule ^categorie/([^/][0-9]+)-([^/]+).html index.php?m=Default&a=categories&cat_id=$1&%{QUERY_STRING} [L]
      
      

      Avete qualche idea? Ci sto sbattendo la testa da un paio di giorni...

      ciao e grazie

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • G
        giacomo79 User Attivo • ultima modifica di

        Dovrei aver capito il problema: sembra che i valori nella query string non li prenda, questo vuol dire che matcha sempre la prima regola (il file è comunque index.php), anche quando dovrebbe matchare la seconda.
        Si può risolvere?

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • M
          margheritebianche User Attivo • ultima modifica di

          Se il link inizia con categoria non può matchare la prima.
          Indica come sono i link che secondo te vengono matchati nella prima.

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • G
            giacomo79 User Attivo • ultima modifica di

            @margheritebianche said:

            Se il link inizia con categoria non può matchare la prima.
            Indica come sono i link che secondo te vengono matchati nella prima.
            Il link inizia con categoria, e non se perchè matcha la prima... 😞
            Ne sono sicuro perchè controllo gli id delle categorie e dei prodotti.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • G
              giacomo79 User Attivo • ultima modifica di

              Come faccio a fargli scrivere un file di log degli errori? Almeno con quello vedo cosa c'è che non va...

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • G
                giacomo79 User Attivo • ultima modifica di

                Aggiornamento sul problema:
                in realtà la regola viene matchata, ma solo se l'id del prodotto esiste. Mi spiego meglio:

                l'id del prodotto esiste? viene caricata la categoria con quell'id ( :mmm: )
                l'id del prodotto non è presente? mi da errore

                Il problema è che anche se l'id del prodotto non esiste, io starei chiamando la pagina delle categorie, non dei prodotti...

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • M
                  margheritebianche User Attivo • ultima modifica di

                  Se ci dici come é fatto il link (scrivi proprio l'URL) possiamo dirti che regola segue. Senno' il problema potrebbe essere ovunque!

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • G
                    giacomo79 User Attivo • ultima modifica di

                    @margheritebianche said:

                    Se ci dici come é fatto il link (scrivi proprio l'URL) possiamo dirti che regola segue. Senno' il problema potrebbe essere ovunque!

                    dominiodiprimolivello/index.php?m=Default&a=product_info&products_id=774
                    dominiodiprimolivello/index.php?m=Default&a=categories&cat_id=1

                    La prima regola che ho scritto nel primo post funziona, la seconda no. Sto leggendo che è un problema di querystring, ma non riesco a trovare documentazione per risolvere.

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • M
                      margheritebianche User Attivo • ultima modifica di

                      Guarda che se i link che hai sono così il mod_rewrite non agisce per niente.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • M
                        margheritebianche User Attivo • ultima modifica di

                        Guarda che se i link che hai sono così il mod_rewrite non agisce per niente.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • G
                          giacomo79 User Attivo • ultima modifica di

                          @margheritebianche said:

                          Guarda che se i link che hai sono così il mod_rewrite non agisce per niente.
                          Perchè la prima regola funziona?

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • G
                            giacomo79 User Attivo • ultima modifica di

                            "Credo" di aver capito, dovrebbe essere un problema di espressione regolare. Questa espressione:

                            [^/][0-9]+

                            matcha solo i numeri dal 10 in su, mentre a me servirebbero anche i primi 9 (infatti se scelgo una categoria con id > 9 il rewrite funziona).

                            Qualche suggerimento per l'espressione regolare? Ne ho trovate ma non funzionano.

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • D
                              donraff User Newbie • ultima modifica di

                              ho un problema:

                              utilizzo queste 2 righe nel mio htaccess

                              RewriteRule ^([^/]+).(p)?htm(l)?$ index.php?id=itinerari&scat=$1 
                              RewriteRule ^([^/]+).(p)?htm(l)?$ index.php?id=conv&cat_conv=$1
                              

                              quando testo, sembra che funzioni solo la prima regola.
                              Se invece commento la prima mi funziona anche la seconda.

                              Sapete come faccio ad evitare il conflitto?

                              grazie 1000 e buon lavoro a tutti

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • M
                                margheritebianche User Attivo • ultima modifica di

                                La prima parte é uguale quindi le due regole sono uguali, quindi la prima é quella utilizzata.
                                Se commenti la prima, viene utilizzata la seconda.

                                Avere + regole ha senso solo e soltanto se la prima non viene matchata e la seconda é diversa dalla prima.

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • D
                                  donraff User Newbie • ultima modifica di

                                  Grazie 1000 margheritebianche, quel problema sono riuscito a risolverlo.

                                  Adesso mi serve capire un'altra cosa,

                                  esempio:

                                  se trasformo
                                  www.miosito.com/index.php?var=1&var2=2

                                  in
                                  www.miosito.com/1/2.html

                                  succede che sulle pagine si perdono i collegamenti alle immagini ed al css.

                                  qualcuno sa spiegarmi come recuperare questa situtazione?

                                  Grazie 1000

                                  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