Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    RewriteRule con parametri nel sottodominio

    Salve a tutti,

    Ho un problema con il mod_rewrite all'interno della configurazione di un virtualhost.
    Questo è il codice:
    codice:
            RewriteEngine on
            RewriteCond %{HTTP_HOST} ^([A-Za-z]+)-([A-Za-z]+). [NC]
            RewriteRule ^/test/?$ test/index.php?param1=%1&param2=%2 [L]
    Dovrebbe fare http://aaa-bbb.mydomain.com/test --> http://aaa-bbb.mydomain.com/test/ind...aaa&param2=bbb , ma non funziona. Ricevo sempre un errore 400 Bad Request!!

    Ho poi provato a aggiungere il redirect (ho cambiato [L] in [R,L]) e tutto funziona benissimo (a parte che fa il redirect e non il rewrite).

    Qualcuno sa dove sbaglio?

  2. #2
    suppongo sia perchè non passi nessun parametro param1 o param2

    quindi chiamando semplicemente lindirizzo test non sa che parametri ci vogliono e non va presumibilmente per quello

    RewriteRule ^/test/?$ test/index.php?param1=%1&param2=%2

    dovrebbe diventare qualcosa del genere

    RewriteRule ^/test/(.*)/(.*)$ test/index.php?param1=$1&param2=$2

    e poi richiami con indirizzo del tipo localhost/test/param1/param2

    comunque dire che è meglio se leggi la guida di apache in quanto ci sono un po di errori nella tua riga (credo) per esempio il % al posto del $

    http://httpd.apache.org/docs/2.2/rewrite/

  3. #3
    Non credo proprio, perché i parametri li riceve (%1, %2 si riferiscono alla riga con RewriteCond)!

    Infatti se faccio il redirect (ovvero [R] al posto di [L]) quando carico http://aaa-bbb.mydomain.com/test l'indirizzo nella barra url cambia in http://aaa-bbb.mydomain.com/test/ind...aa&param2=bbb.

    Quando però uso il rewrite ([L]) ricevo l'errore..

    Quello che mi suggerisci è giusto, infatti per ovviare al problema sto già usanto una sintassi tipo http://aaa-bbb.mydomain.com/test/aaa-bbb -> http://aaa-bbb.mydomain.com/test/ind...aa&param2=bbb. Vorrei però riuscire a passare direttamente il sottodominio come parametro!

  4. #4
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573

    Re: RewriteRule con parametri nel sottodominio

    Originariamente inviato da BrainBurner
    Ricevo sempre un errore 400 Bad Request!!
    il log degli errori cosa dice?

    cambia così e prova:
    codice:
            RewriteEngine On
            RewriteCond %{HTTP_HOST} ^([A-Za-z]+)-([A-Za-z]+)\. [NC]
            RewriteRule . test/index.php?param1=%1&param2=%2 [L]
    utilizzando http://aaa-bbb.mydomain.com/test2 e poi http://aaa-bbb.mydomain.com/test

  5. #5
    Niente, neanche questo funziona..

    Nel file di log (stranamente) non c'è niente! Nel file access.log trovo le chiamate /test2, /test. Ma in error.log solo errori php risalenti ad alcune ore prima!

    Grazie lo stesso
    BrainBurner

  6. #6
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Originariamente inviato da BrainBurner
    Niente, neanche questo funziona..

    Nel file di log (stranamente) non c'è niente! Nel file access.log trovo le chiamate /test2, /test. Ma in error.log solo errori php risalenti ad alcune ore prima!

    Grazie lo stesso
    BrainBurner
    è strano perchè a me non darebbe errore nemmeno la regola che hai postato tu, solo che non passa i parametri.
    quella che ti ho fornito l'ho appena testata e mi passa i parametri.
    poi per non funziona intendi che ti da errore o che non passa i parametri?

  7. #7
    Visualizzo una pagina con l'errore 400 Bad Request..

  8. #8
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    e niente nel log degli errori?

    ho letto meglio:
    Originariamente inviato da BrainBurner
    ...Ma in error.log solo errori php risalenti ad alcune ore prima!...
    ma di quale error.log?
    il log degli errori di php è attivabile nel php.ini, ti fa scegliere il file in cui salvarlo. lo hai impostato per salvarli nel log di apache?

  9. #9
    Nel virtualhost di apache ho definito
    codice:
    CustomLog /var/log/httpd/mydomain.com-access.log combined
    ErrorLog /var/log/httpd/mydomain.com-error.log
    Nel primo vedo di aver fatto la richiesta a /test2 e poi a /test, ma nel log di errore non vedo proprio nessuna riga con lo stessa data/ora/ip (solo avvisi risalenti a qualche ora prima)..

  10. #10
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Originariamente inviato da BrainBurner
    Nel virtualhost di apache ho definito
    codice:
    CustomLog /var/log/httpd/mydomain.com-access.log combined
    ErrorLog /var/log/httpd/mydomain.com-error.log
    Nel primo vedo di aver fatto la richiesta a /test2 e poi a /test, ma nel log di errore non vedo proprio nessuna riga con lo stessa data/ora/ip (solo avvisi risalenti a qualche ora prima)..
    scusa se insisto , ma nemmeno in /var/log/httpd/error.log c'è l'errore?
    per il terzo livello hai definito un VirtualHost o usi ServerAlias?

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.