我有一种情况,我希望从 Apache 网络服务器中挑选一些图像,并从应用程序服务器(在我的情况下为 Jboss)中包含一些图像。所以我想要一个既要排除又要包含的正则表达式。这是我在 VirtualHost 标签下添加到 httpd.conf 文件的内容。
jsf jars 和 jenia popup jars 中有一些 css 和 js 文件,我们在网络服务器上找不到。因此,请联系应用服务器。正则表达式正在查找所有 *.js 和 *.css url,但排除其中包含 /jenia4faces 和 /faces 的任何 url。这是为了确保像 /MYWEBAPP/jenia4faces/popup/popupFrame/js/popupFrame.js 和 /MYWEBAPP/faces/myFacesExtensionResource/tabbedpane.HtmlTabbedPaneRenderer/11302665/dynamicTabs.js 这样的脚本仍然从应用服务器中提取。其余所有 .js 和 .css 将由网络服务器提供服务。
ProxyPassMatch ^(/MYWEBAPP/(?!jenia4faces).*\.js)$ !
ProxyPassMatch ^(/MYWEBAPP/(?!faces).*\.css)$ !
ProxyPassMatch ^(/MYWEBAPP/(?!jenia4faces).*\.js)$ !
ProxyPassMatch ^(/MYWEBAPP/(?!faces).*\.css)$ !
/MYWEBAPP 是我的网络应用程序根上下文。另外 (?!faces) 是判断 url 在 url 路径中是否没有“faces”。