Spring Boot war外部Tomcat上下文路径

Spring Boot war外部Tomcat上下文路径,tomcat,spring-boot,Tomcat,Spring Boot,我们使用SpringBoot,我创建了一个WAR,而不是一个JAR,用于部署在一个普通的Tomcat服务器上。除了上下文路径没有被正确设置之外,所有这些似乎都可以正常工作。my index.html中的任何相对路径都不起作用 在浏览器中加载应用程序时,此链接 <link type="text/css" rel="stylesheet" href="app.min.css" /> 试图从而不是从中加载“。尝试在application.properties中设置此值无效,因为此值似

我们使用SpringBoot,我创建了一个WAR,而不是一个JAR,用于部署在一个普通的Tomcat服务器上。除了上下文路径没有被正确设置之外,所有这些似乎都可以正常工作。my index.html中的任何相对路径都不起作用

在浏览器中加载应用程序时,此链接

<link type="text/css" rel="stylesheet" href="app.min.css" />


试图从而不是从中加载“。尝试在application.properties中设置此值无效,因为此值似乎仅适用于嵌入式Tomcat服务器。

正如您已经猜到的
服务器。上下文路径
属性以及所有其他
服务器。*
属性仅适用于嵌入式Tomcat。如果使用WAR打包部署到外部tomcat,则必须在外部tomcat本身中配置这些值


我们通常在这里这样做的方式是在
/conf/Catalina/localhost/
中有一个上下文描述符,其名称等于您期望的上下文路径,即
contextpath.xml
,根据。

您是否在浏览器显示的源代码中有这一行
?@NicolasLabrot,是的。当浏览器试图拉下外部链接时,我可以看到网络调用。是否有方法通过应用程序代码或配置而不是通过Tomcat服务器配置来完成此操作?在contextpath.xml文件中,我设置了path属性。我已经在catalina.log文件中验证了该文件是否已读入,路径是否已设置,但它不起作用。访问main index.html页面时,将尝试从而不是从下载链接。spring boot是否以不同的方式处理了这个问题?我开始认为我读错了你的问题,我将把我的答案暂时放在那里,一旦我弄清楚发生了什么,就编辑它。我认为需要在外部tomcat配置中设置上下文它如何与
server.context path
属性一起工作?我假设这个属性被从servlet容器读取的上下文路径覆盖。因此,您需要仅为本地部署(嵌入式)设置它,以便它与外部服务器上的路径相同(在外部服务器上设置相同)