如何在Spring Boot 2中从外部项目文件夹提供sitemap.xml

时间:2019-10-02 06:20:53

标签: spring-boot spring-mvc

我有一个Spring Boot 2 Web application这是一个博客网站,其中有一个动态sitemap.xml文件。每当我们在资源库中添加新文章时,sitemap.xml就会更新。现在,我需要从项目位置之外的地方来提供sitemap.xml文件。考虑到sitemap.xml位于以下位置:

/home/admin/sitemap.xml

我的要求是,每当用户单击URL https://<my_url>/sitemap.xml时,都应从上述位置提供文件。我已经添加了相同的映射。

@Configuration
@AutoConfigureAfter(DispatcherServletAutoConfiguration.class)
public class WebConfiguration implements WebMvcConfigurer {

    @Override
    public void addResourceHandlers(final ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/sitemap.xml/**").addResourceLocations("/home/admin/sitemap.xml");
    }
}

但是代码不起作用。谁能建议我在这里做错什么。

1 个答案:

答案 0 :(得分:0)

最后,我通过编写H[e] = 25解决了这个问题。互联网上许多解决方案都说要将GetMapping文件作为sitemap.xml返回。但是请注意, Google不会读取错误的String头文件 sitemap.xmlContent-Type必须为 Content-Type 。以下是我的"application/xml"

@GetMapping