Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    mod_rewrite - 2 regole simile per url differenti

    Ciao a tutti,
    sono nuovo per il mondo Apache e mod_rewrite

    Nel mio file htaccess, ho creato le 2 seguenti regole di rewrite

    codice:
    RewriteEngine On
    RewriteRule  ^.*-(\d+)$ newsinterno.php?id=$1 [L]
    RewriteRule  ^.*-(\d+)$ prodottocategoria.php?id=$1 [L]
    Entrambe le regole servono per ricevere una url nel formato "titolo-id"
    La prima funziona senza problemi, e la seconda no.
    La cosa chiaramente non mi stupisce, infatti io nella URL del sito, mando 2 url esattamente analoghe nella struttura. es:
    prima-news-1
    plotter-uv-3

    è normale che qualdo il server deve interpetare la regola non può discernere se la richiesta debba essere reindirizzata alla pagina newsinterno.php(Regola 1) oppure prodottocategoria.php(regola2).

    Ma allora come devo fare?
    come posso creare 2 regole che facciano un reindirizzamento verso pagine diverse?
    Devo aggiungere ad esempio un testo come' prefisso', in modo da ottenere ad esempio:
    news-prima-news-1
    categoria-plotter-uv-3
    Puo funzionare?
    Oppure come altro è possibile risolvere?
    Qual'è il metodo migliore?


  2. #2
    Scusate se mi rispondo subito da solo

    Come accennato nel post iniziale, ho modificato così le mie regole.
    ed il tutto sembra funzionare:

    codice:
    RewriteEngine On
    RewriteRule  ^news-.*-(\d+)$ newsinterno.php?id=$1 [L]
    RewriteRule  ^categoria-.*-(\d+)$ prodottocategoria.php?id=$1 [L]
    Esiste comunque un metodo migliore o più intelligente?

  3. #3
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    O aggiungi il prefisso o gestisci lato applicazione il REQUEST_URI, gestendo il tutto con una rule che invii le richieste ad un unico script.

    Domanda, perché il prefisso ti sembra essere una soluzione poco intelligente?

  4. #4
    Non è che mi sembra poco intelligente...

    E' la prima volta che mi tocca avere a che fare con il mod_rewrite, e come sempre accade in questo caso non si sa mai se la tecnica che si sta adottando sia la migliore possibile.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.