Не уверен, .
разрешено в начале пути.Согласно RFC 3896:
Сегменты пути "."и "..", также известный как точечные сегменты, определены для относительной ссылки в иерархии имен путей.Они предназначены для использования в начале ссылки на относительный путь (раздел 4.2) для указания относительного положения в иерархическом дереве имен.Это похоже на их роль в структурах файловых каталогов некоторых операционных систем для указания текущего каталога и родительского каталога соответственно.Однако, в отличие от файловой системы, эти точечные сегменты интерпретируются только в пределах иерархии путей URI и удаляются как часть процесса разрешения (раздел 5.2).
Также, предостережение, когдаиспользуя .
в ваших путях: по умолчанию Spring будет пытаться использовать путь для определения типа контента:
https://spring.io/blog/2013/05/11/content-negotiation-using-spring-mvc
Пример: путь, заканчивающийся на .au
, можно интерпретировать какзапрос на application/audio
, для которого вы, вероятно, не установили обработчик.
Чтобы отключить это поведение, вы должны установить favorPathExtension=false
на ContentNegotiationConfigurer
.