我使用Tomcat(6.0.26)和SpringMVC作为Windows7上的网站。我想测试一下它是否适用于某些页面或目录的SSL。
我在C:\Users\Me中有一个自己分配的SSL证书(文件:.keystore),默认密码为"changeit"。
在Spring的安全上下文中,我有以下内容:
<http auto-config="false" use-expressions="true" request-matcher="regex" >
....
<intercept-url pattern="^/login$" requires-channel="https" />
<port-mappings>
<port-mapping http="8080" https="8443"/>
</port-mappings>
</http>
当我点击http://localhost:8080/login,我被重定向到https://localhost:8443/login,正如我所希望的那样。然而,只有一些(而不是全部)css文件被加载,我的javascript文件中没有一个被加载。我所有的css和javascript文件都是本地的。
以下是我在JSP中对css文件的处理方式:
<link rel="stylesheet" href="/css/styles.css" />
我在CSS和JS文件的Spring上下文中有这个
<mvc:resources mapping="/css/**" location="/css/" />
<mvc:resources mapping="/js/**" location="/js/" />
以下是我对javascript文件的处理方式,以及Firebug中显示的内容:
<script src="/js/my.js"></script>
this leads to Status being "302 Moved Temporarily". no file content is loaded
<script src="//js/my.js"></script>
this leads to Status being "Aborted"
出了什么问题?如何修复?谢谢
(1)将其添加到web.xml 中
<servlet-mapping>
<servlet-name>main</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
(2) 将<mvc:annotation-driven />
添加到您的上下文
(3) 尝试路径为/yourApp/css/*.css