0

我通过将上下文路径设置为 /myservice 来运行我的 springboot 应用程序。这导致附加我在 URL- http://localhost:8080/myservice/actuator/ 上公开的所有执行器端点,而我只想要 http://localhost:8080/actuator/。有没有办法告诉 springboot 忽略附加到执行器端点的上下文路径(通过 DispatcherServlet 或 CXFServlet 或任何东西)请帮助。

4

3 回答 3

3

不幸的是,这是不可能的。

从文档中:

除非管理端口已配置为使用不同的 HTTP 端口公开端点,否则 management.endpoints.web.base-path 是相对于 server.servlet.context-path (Servlet Web 应用程序)或 spring.webflux.base-path (反应式网络应用程序)。如果配置了 management.server.port,则 management.endpoints.web.base-path 相对于 management.server.base-path。

来源:https ://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#actuator.monitoring.customizing-management-server-context-path

您可以做的是为管理端点使用不同的端口。

management.server.port=8081

然后你会得到 http://localhost:8081/actuator

于 2021-05-21T15:59:32.337 回答
1

从技术上讲这是不可能的,因为 spring boot 只有一个DispatcherServlet前端控制器,如果你想要两个不同的路径,那么你可以@RequestMapping在两个不同的控制器上使用注释`

你们仍然想要两个不同的上下文路径,那么你应该有两个DispatcherServlet's

于 2021-05-21T16:04:02.823 回答
0

更改执行器的根路径 -> application.properties

management.endpoints.web.base-path=/

这将使所有管理端点(包括执行器)没有基本路径,或者您可以指定一些东西。

于 2021-05-22T10:12:13.437 回答