Come posso servire alcuni modelli di percorso da radice dei documenti, e altri provenienti da mod_jk?

StackOverflow https://stackoverflow.com/questions/1064359

  •  21-08-2019
  •  | 
  •  

Domanda

Abbiamo una situazione esistente in cui abbiamo Apache 2.0 HTTPD che agisce come il bilanciamento del carico per un cluster di Tomcats backend, utilizzando mod_jk 1.2 per comunicare tra i due. Le applicazioni stesse vengono memorizzati sui server Tomcat, e così tutte le richieste sono passati attraverso (anche le immagini, css, ecc) per Tomcat, utilizzando il seguente nelle configurazioni host virtuali:

JkMount /* worker-name

Gli host virtuali non hanno un DocumentRoot definito, dal momento che tutto il traffico va giù il tubo di Tomcat.

Ci piacerebbe iniziare a servire contenuti statici direttamente da Apache (un'idea radicale, lo so). Dato la nostra struttura percorso di applicazione, l'unico modo per distinguere statica dal contenuto dinamico è l'estensione del file del percorso richiesto. Così, per esempio, tutte le richieste che terminano in .jpg, css, ico, ecc non sarebbero passati attraverso la JkMount, ma invece serviti da un DocumentRoot.

Ecco, questo è il contesto. La mia domanda è, come posso confgiure il vhost in modo che tutte le richieste che corrispondono a un determinato modello (in particolare, il mio modello di quello che vogliamo per essere servito da Apache) sono serviti dal DocumentRoot, e tutti gli altri passati al gatto?

Può questo essere fatto con una regex in JkMount? È <=> che flessibili? In caso contrario, posso fare uso di mod_rewrite?

È stato utile?

Soluzione

È possibile utilizzare JkUnMount per indicare che alcune richieste non vengono gestite da mod_jk. Ho visto esempi che utilizzano le estensioni dei file e percorsi:

JkMount /* worker-name
JkUnMount /*.jpg worker-name
JkUnMount /images/* worker-name

Vedere qui per ulteriori informazioni.

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