Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 使用附加子路径在反向代理后运行JSF_Apache_Tomcat_Jsf_Reverse Proxy - Fatal编程技术网

Apache 使用附加子路径在反向代理后运行JSF

Apache 使用附加子路径在反向代理后运行JSF,apache,tomcat,jsf,reverse-proxy,Apache,Tomcat,Jsf,Reverse Proxy,大多数已经给出的答案适用于您想要隐藏应用程序路径的情况。我们的情况是,只要求以“开始”http://www.example.com/ourpath“被中继到我们的apache 这意味着我们的apache重写了 ProxyPass "/ourpath/MyApp" "ajp://internalcontainer:8009/MyApp" ProxyPassReverse "/ourpath/MyApp" "a

大多数已经给出的答案适用于您想要隐藏应用程序路径的情况。我们的情况是,只要求以“开始”http://www.example.com/ourpath“被中继到我们的apache

这意味着我们的apache重写了

    ProxyPass "/ourpath/MyApp"  "ajp://internalcontainer:8009/MyApp"
    ProxyPassReverse "/ourpath/MyApp"  "ajp://internalcontainer:8009/MyApp"
应用程序本身现在是可访问的,但是jsf构建的URL如下

http://www.example.com/MyApp/javax.faces.resource/jquery/jquery.js.xhtml?ln=primefaces&v=6.2

这就是“我们的道路”部分。知道我们如何影响tomcat的上下文路径信息吗?

好的,我得到了一个解决方案,内部和外部路径必须相同,否则就没有可靠的解决方案

ProxyPass "/ourpath/MyApp"  "ajp://brainyoo2web:8009/ourpath/MyApp"
ProxyPassReverse "/ourpath/MyApp"  "ajp://brainyoo2web:8009/ourpath/MyApp"
并确保应用程序部署在同一路径中:

COPY --from=webbuild /myapp/target/MyApp /usr/local/tomcat/webapps/ourpath#MyApp
或者创建一个名为ourpath#MyApp.war的war文件


#告诉tomcat url中有一个子路径

好的,我得到了一个解决方案,内部和外部路径必须相同,否则就没有可靠的解决方案

ProxyPass "/ourpath/MyApp"  "ajp://brainyoo2web:8009/ourpath/MyApp"
ProxyPassReverse "/ourpath/MyApp"  "ajp://brainyoo2web:8009/ourpath/MyApp"
并确保应用程序部署在同一路径中:

COPY --from=webbuild /myapp/target/MyApp /usr/local/tomcat/webapps/ourpath#MyApp
或者创建一个名为ourpath#MyApp.war的war文件


#告诉tomcat url中有一个子路径

,我认为您不能。但是您可以在Apache上创建一个重写规则,添加额外的path@SimonMartinelli但是我需要删除额外的路径?`不,你必须将其添加到响应中?@SimonMartinelli好的,但是重写规则如何更改html页面中的URI?哦,对不起。你是对的!我只是忘了这是我的错,我认为你不能。但是您可以在Apache上创建一个重写规则,添加额外的path@SimonMartinelli但是我需要删除额外的路径?`不,你必须将其添加到响应中?@SimonMartinelli好的,但是重写规则如何更改html页面中的URI?哦,对不起。你是对的!我只是忘记了对于“内部”路径是JSF,您至少可以在tomcat中使用context.xml文件来显式设置路径。对于“内部”路径,您至少可以在tomcat中使用context.xml文件显式设置路径。