如何通过mod_jk和apache&tomcat获取html / css / jpg页面服务器

我有apache2和tomcat6都运行在端口80与ubutnu服务器上的mod_jk设置。 我必须在apacheconfiguration文件中设置一个错误文档503 ErrorDocument 503 /maintenance.html ,并在某种程度上我设法让它工作,并且当tomcat停止时错误页面是apache的服务器。 开发人员创build了一个好看的错误页面(一个调用css和jpg的html页面),当tomcatclosures时,我被要求得到由apache提供的这个页面。 当我尝试在虚拟主机中使用JkUnMount /*.css ,由于tomcat应用程序使用jsp,css,js,jpg等,实际的tomcat jsp页面无法正常工作(丢失格式)。 我试图,如果有可能得到.css和.jpg由Apache和tomcat服务,以便当tomcatclosures时,我会得到css和jpg服务器的Apache和正确的错误文件被送达。 任何人有任何技术?

这是我的apache2configuration:

vim /etc/apache2/apache2.conf

 Alias / /var/www/ ErrorDocument 503 /maintenance.html ErrorDocument 404 /maintenance.html JkMount / myworker JkMount /* myworker JkMount /*.jsp myworker JkUnMount /*.html myworker <VirtualHost *:80> ServerName station1.mydomain.com DocumentRoot /usr/share/tomcat/webapps/myapps1 JkMount /* myworker JkUnMount /*.html myworker </VirtualHost> <VirtualHost *:80> ServerName station2.mydomain.com DocumentRoot /usr/share/tomcat/webapps/myapps2 JkMount /* myworker JkMount /*.html myworker </VirtualHost> 

简单地说,我试图做的是,当tomcat停止时,css和jpg应该由apache提供服务,当tomcat启动时,应该由tomcat而不是由apache提供服务。

如果您的维护页面不是太复杂,我会build议将样式表内联到文档中。 这样,您就不必像上面提到的那样烦恼复杂的规则集,并且仍然能够服务一个风格良好的维护页面。 当然,这并不一定能解决图像的问题。

你能不能跟JkMounts更聪明一些? 所以(删除一些行清晰): –

 Alias / /var/www/ ErrorDocument 503 /maintenance/maintenance.html JkMount / myworker JkMount /* myworker JkUnmount /maintenance/* myworker <VirtualHost *:80> ServerName station1.mydomain.com DocumentRoot /usr/share/tomcat/webapps/myapps1 JkMount /* myworker JkUnmount /maintenance/* myworker </VirtualHost> 

然后,您可以静态链接到mainentance文件夹内的常用css和jpg。

把所有的自定义错误放在一个子目录中,然后使用no-jk环境variables绕过该子目录的mod_jk,如:

 SetEnvIfRequest_URI "/errors/*" no-jk JkMount / myworker JkMount /* myworker JkMount /*.jsp myworker 

那么,你不需要被JkUnMount指令困扰。