• User

    Problema con url-rewriting

    Ciao a tutti,
    gestisco uno spazio web che ospita più siti con domini diversi. Ogni sito è dentro una cartella.
    Ho la necessità di ottimizzare gli url di uno dei siti per renderli SEO friendly. Essendo siti in php hanno i classici indirizzi ```
    sitoesempio . com/index . php?page=pagina

    
    Non capisco dove sbaglio ma non riesco assolutamente a saltarci fuori! :x
    
    Ho modificato l'htaccess in tutti i modi ma non funziona mai perfettamente. Quando riesco a riscrivere gli url mi sballano gli altri siti.
    
    Queste sono le regole di htaccess originarie, uguali per ogni sito:
    
    

    RewriteCond %{HTTP_HOST} ^(w w w .)?sitoesempio . com$
    RewriteCond %{REQUEST_URI} !^/cartella-sito/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d

    RewriteRule ^(.*)$ /cartella-sito/$1

    
    Se aggiungo l'url-rewriting come ultima istruzione:
    
    

    RewriteRule ^([^/]+)$ index . php?page=$1

    
    non funziona.
    
    Funziona se lo aggiungo sopra l'ultima riga delle regole htaccess ma poi non mi funzionano più gli altri siti.
    
    Potete aiutarmi per favore?

  • User

    Mi spiego meglio.
    Se inserisco l'istruzione per l'url rewriting (prima dell'ultima riga delle regole htaccess), il sito in questione funziona e mi riscrive gli url ottimizzati, ma mi viene aggiunto il nome della cartella dove ho fatto l'url rewriting a tutti gli indirizzi degli altri siti, i quali non funzionano più.
    Qualche idea??


  • User

    Funziona!!!
    Ho modificato l'istruzione di url rewriting e l'ho inserita prima di tutte le altre:

    
    RewriteRule ^([a-zA-Z0-9-_]+)/?$ index . php?page=$1 [NC,L]
    
    

    Però, sinceramente, non so spiegarvi il motivo.
    Se magari qualcuno sapesse spiegarlo tecnicamente gliene sarei grata. 🙂