Domanda

Ho un Apache e Tomcat in esecuzione e io uso mod_jk per legarli. Ho un operaio Tomcat denominata "TC1" e la seguente configurazione sul mio VirtualHost:

JkMount   /* tc1
JkUnMount /*.png tc1
JkUnMount /*.gif tc1
JkUnMount /*.css tc1
JkUnMount /*.js tc1

In questo modo Tomcat serve tutte le richieste a parte quelli per i file statici.

Ora voglio usare mod_rewrite e fare qualcosa di molto semplice, come ad esempio:

RewriteEngine On
RewriteRule ^/foo$ /bar [L]

per riscrivere la pagina visualizzata dinamica a "/ foo" a "/ bar", ma non funziona perché tutti gli URL trattati dalla mod_rewrite non finiscano in mod_jk.

Ho letto la documentazione Apache Tomcat connettore e provato tutti del JkOptions, ma nulla è cambiato.

Qualcuno sa come risolvere questo?

Lo dell'ordine e le dichiarazioni di carico mod_jk e mod_rewrite ordinare gioca alcun ruolo nella trasformazione URL?

grazie

È stato utile?

Soluzione

È strano, perché di default un RewriteRule invia un reindirizzamento sul lato client, in modo che il cliente dovrebbe fare una seconda richiesta a / bar che dovrebbe essere catturato dal vostro JkMount. Il vostro accesso log mostra mostra la richiesta di /foo e la richiesta di /bar anche?

Prova questa regola invece:

RewriteRule ^/foo$ /bar [PT,L]

Il "PT" significa "pass-through", ed è un bodge riscrittura che permette di mutare l'URL in situ e permette di altri moduli ottenere uno sguardo dentro, senza l'invio di un reindirizzamento.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top