将MVC Web应用程序部署到tomcat问题URI

时间:2019-03-07 03:04:14

标签: spring-boot tomcat9

在将WAR文件部署到本地后,我可以通过“ localhost:8080 / [WAR文件名] /”访问索引页,但是如果不通过添加“ / [WAR文件名]手动修复URL,就无法访​​问其他页面。 /”,位于“ localhost:8080”和控制器的RequestMapping值之间。

如何配置它会自动在URI中添加“ / [WAR文件名] /”(而不是将WAR导出为ROOT.war)

1 个答案:

答案 0 :(得分:0)

如果您使用Thymeleaf模板引擎,则需要使用Link URL syntax来获取模板中的链接,这些链接可以正确地呈现为相对URL。因此,如果您希望HTML中的链接指向(例如)

<a href="/[WAR file name]/books/list">See all books</a> 

您需要将其作为模板包含在

<a th:href="@{/books/list}">See all books</a>

如果愿意,还可以保留原始的href属性:

<a href="/books/list" th:href="@{/books/list}">See all books</a>

例如,如果出于设计目的在MVC应用程序之外使用Thymeleaf模板,这可能会很有用,但是当由Tomcat提供服务时,它将被th:href值覆盖。