2016-08-11 54 views
0

我們有一個Spring Boot應用程序,其中/css/StYLE.cSS將檢索位於static/css/style.css中的css文件。一旦打包成戰爭並部署到Tomcat,然而,這些網址會區分大小寫,幷包含404s。在Spring資源解析中強制區分大小寫

有沒有辦法在Spring MVC/Spring Boot中強制實現資源url區分大小寫?

如果URL 404比謹慎小心,那麼更容易注意到開發中的案例不匹配。

+0

這通常歸屬於底層文件系統。如果你在windows上運行vs Linux或其他一些區分大小寫的操作系統,你會看到這種行爲 – Taylor

回答

2

我假定您使用的是Windows等操作系統,其中文件系統不區分大小寫。在這種情況下,當您在開發過程中運行時,資源將從磁盤上的本地文件夾(不區分大小寫)提供,但是在打包JAR時,它們將用於JAR zip文件條目(區分大小寫)。

一個選項可能是插入您自己的org.springframework.web.servlet.resource.PathResourceResolver並覆蓋getResource以使所有resourcePath參數都爲小寫。然後,您還需要強制執行/static下的所有文件都是小寫字母(也許您可以在編譯時執行此操作)。或者,您可能能夠檢查任何找到的資源的名稱是否與resourcePath完全匹配,以便有效地使文件系統版本區分大小寫。