当前位置: 首页 > 知识库问答 >
问题:

404用于Spring启动时的静态映像

汪思博
2023-03-14

html文件中,有一个图像:

        <div class="login-branding">
        <a href="index.html"><img src="../static/images/logo.png" alt="Clevex" title="Clevex"></a>
    </div>

地址:http://localhost:8090/login,我看着控制台,看到:

获取http://localhost:8090/static/images/logo.png404

但是当申请结束时,如果我去

http://localhost:8090/images/logo.png

通过这个url,我可以在chromebrowser的控制台上看到图像,没有任何错误或警告。

这是我的安全配置:

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Autowired
    private CustomAuthenticationProvider customAuthenticationProvider;

    @Override
    protected void configure(HttpSecurity http) throws Exception {

 http.cors().and().csrf().disable();

        String[] resources = new String[]{
                "/",
                "/home",
                "/pictureCheckCode",
                "/include/**",
                "/css/**",
                "/icons/**",
                "/images/**",
                "/js/**",
                "/resources/**",
                "/layer/**",
                "/static/**",
                "/js/**",
                "/img/**",
                "/webjars/**"
        };

   http
                .authorizeRequests()

                .antMatchers(resources).permitAll()

我还添加了@EnableAutoConfiguration,但它什么也没做。也给出了错误。

我不想使用addResourceHandlers因为它是spring boot,应该进行自动配置。

目录是这样的:

src
-main
-resources
--static
---images
----logo.png

以下是应用程序的启动方式:

@SpringBootApplication
public class InternalApplication {

    public static void main(String[] args) {
        SpringApplication.run(InternalApplication.class, args);
    }

}

任何建议都将不胜感激。

共有2个答案

越飞翮
2023-03-14

这起了作用:

https://stackoverflow.com/a/56196207/11369236

我变了

<a href="index.html"><img src="../static/images/logo.png" alt="Clevex" title="Clevex"></a>

            <a href="index.html"><img src="/images/logo.png" alt="Clevex" title="Clevex"></a>

我很困惑,因为Intellij Idea

超文本标记语言代码中,如果我单击.../静态/图像/logo.png,它可以转到图像。

但是当我点击/images/logo时。png在HTML代码中,它不去,也声纳为它发出警告。

谭翔
2023-03-14

static目录中的所有内容都在web应用程序的根目录下提供。所以/static/images/logo。png由Spring Boot在/images/logo提供服务。png

所以替换:

src="../static/images/logo.png"

与:

src="/images/logo.png"

 类似资料:
  • 我想用spring boot开发web应用程序,我想在jsp文件中处理javascript和css资源。我在dispatcher servlet中从jsp配置对此文件的访问权限。xml如下所示: 在我的jsp文件中,我可以使用下面的代码来访问它: 我如何做配置mvc:资源映射在Spring启动?

  • 我是Spring靴的初学者。 我刚刚写了一个控制器,代码在这里。 然后当我访问“localhost:8080”时,我得到了正确的页面。但是当我访问“localhost:8080/hello/someName”时,我得到了“白标签错误页面”。 我的代码怎么了?非常感谢。

  • 我正在尝试启动索引。我的spring boot应用程序中的html,但请参见404。我缺少什么依赖关系? 建筑gradle(多项目) 项目结构: 应用程序类别:

  • 我在学习春靴。现在我必须将静态资源部署到web项目中,链接它,但它返回404错误 此外,当我访问“localhost:8080/appie/resources/js/common.js”浏览器时,返回404错误(我的上下文路径是/appie)。 那是什么原因呢?

  • 我想创建Spring boot Web应用程序。 我有两个静态html文件:一个。html,两个。html。 我想将它们映射如下 不使用模板引擎(Thymeleaf)。 如何做到这一点?我已经尝试了很多方法来实现这一点,但我有404个错误或500个错误(循环视图路径[one.html]:将调度回当前处理程序URL)。 OneController.java是: 项目结构为

  • 我有一个使用Spring boot的小项目(通过http://start.spring.io/): 1) 我有一个控制器: 2) 在我的文件夹src/main/resources/static/中,我添加了一个文件:index。html。 不幸的是,当我试图通过'http://localhost:8080/,我得到一个404错误。为什么? 我找到了两种解决这个问题的方法,但我想这不是Spring