Первый вопрос: «сопоставление»
Я не уверен на 100%, но я бы предположил, что в этом месте отсутствует окончательный /
.измените его на:
<mvc:resources mapping="/picture/**" location="file:/test/" />
Еще один вопрос: я не уверен, что это хороший подход.Какие есть другие решения для доступа к медиафайлам во внешней папке?
По моему скромному мнению, очень плохо предоставлять пользователю веб-сайта полный доступ для чтения к папке.Внимание, доступ не ограничивается только папкой, но пользователь также может получить доступ ко всем подпапкам.
* И даже если вы решили проигнорировать это предупреждение, вы должны проверить, что произойдет, если кто-то используетinvoke http://localhost:8080/app/picture/../someFile
. ** Я не знаю, что произойдет, но ** на 120% уверен, что никто не сможет получить доступ к какому-либо файлу вне папки picture
!- Я посмотрел на реализацию пружины, и кажется, что пружина уже справилась с этой проблемой. * Начиная с Spring 3.2.12, 4.0.8, 4.1.2, обработчик ресурсов должен убедиться, что выне получить доступ к папке за пределами указанной папки ресурсов.( SPR-12354: обход каталога со статической обработкой ресурсов (CVE-2014-3625) )