春季启动以AJP设置的java -jar运行,无法通过Apache解决Web调用。但API调用正常

时间:2019-05-15 08:27:09

标签: apache spring-boot

使用Java -jar命令运行时的Spring boot,仅通过Apache接收API调用,而当我从浏览器中访问Hope页面URL(或任何URL)时,得到404。

以下是在APache配置(Bitnami服务器)中

<LocationMatch "^/(?!((server-status|phpmyadmin)([^a-zA-Z0-9]|$))).*$">
  ProxyPass ajp://localhost:8009
</LocationMatch>

对于AJP,将以下代码添加为配置

 @Bean
    public WebServerFactoryCustomizer<TomcatServletWebServerFactory> servletContainer() {
      return server -> {
        if (server instanceof TomcatServletWebServerFactory) {
            ((TomcatServletWebServerFactory) server).addAdditionalTomcatConnectors(redirectConnector());
        }
      };
    }

    private Connector redirectConnector() {
       Connector connector = new Connector("AJP/1.3");
       connector.setScheme("http");
       connector.setPort(ajpPort);
       connector.setSecure(false);
       connector.setAllowTrace(false);
       return connector;
    }

Am在Apache中缺少任何ProxyPass设置吗?还是我在springboot中缺少任何东西?

1 个答案:

答案 0 :(得分:0)

我创建了war文件并将其作为jar运行,代码起作用了。