• User Attivo

    2 regole di riscrittura

    Sto riscrivendo alcuni url di una directory e vedendo diversi post in questo forum sono riuscito a fare delle espressioni che funzionano perfettamente.

    Ora però avrei la necessità di fare 2 regole RewriteRule che funzionamo entrambe; sinceramente non so se è possibile farlo.

    Praticamente le 2 regole che ho fatto io funzionano tutte e 2 singolarmente, nel senso che devono essere attivate o una o l'altra ma non tutte e 2 insieme. Di seguito le 2 regole:

    # RewriteRule ^/news/(.*)\.html$ /news/index.php?id_n=$1
    # RewriteRule ^/news/music/([0-9]+)/(.*)/(.*)\.html$ /news/music/index.php?id_aut=$1
    
    

    Attivandole tutte e 2, come gia detto, comunque ne funziona solo una; da questo deduco che non è il metodo giusto anche perchè mi riferisco sempre alla stessa directory.

    Ho provato diverse flag ma niente di fatto; l'unica cosa che forse potrebbe fare al coso mio sarebbe l'utilizzo di RewriteCond ma non ne sono molto convinto. Sono sicuro che c'è un sistema più semplice, anche perchè adesso mi sto cimentando nell'utilizzo del mod_rewrite figuriamoci se so come si usa RewriteCond. 😄

    Resto a disposizione per ulteriori chiarimenti. :ciauz:


  • User Attivo

    La prima /news/(.*).html$ vuol dire "se trovi qualcosa che inizia con news e finisce con html trasformala in..." (+ o -) quindi é chiaro che nella seconda condizione non ci entrerà mai!


  • User Attivo

    @linus said:

    Praticamente le 2 regole che ho fatto io funzionano tutte e 2 singolarmente, nel senso che devono essere attivate o una o l'altra ma non tutte e 2 insieme. Di seguito le 2 regole:

    # RewriteRule ^/news/(.*)\.html$ /news/index.php?id_n=$1
    # RewriteRule ^/news/music/([0-9]+)/(.*)/(.*)\.html$ /news/music/index.php?id_aut=$1
    
    

    Ed è giusto che sia così. Grazie Margherite bianche mi hai aperto la mente.
    Più semplice di quel che pensavo nella riiscrittura dell'URL ho eliminato la prima directory cosi come di seguito```
    RewriteRule ^/news/(.).html$ /news/index.php?id_n=$1
    RewriteRule ^/music/([0-9]+)/(.
    )/(.*).html$ /news/music/index.php?id_aut=$1

    Così funzionano tutte e 2 Grazie.