Grails WEB-INF доступен из развернутого приложения

В приложении grails можно получить доступ к содержимому WEB-INF, включая все содержимое.gsp, а также файл.class при развертывании.

Я использую Grails 2.3.5 и развертываю войну в коте 7.

Вы можете получить доступ к файлам, используя

http://mydomain.com/static/WEB-INF/web.xml
http://mydomain.com/static/WEB-INF/grails-app/views/anyview.gsp
http://mydomain.com/static/WEB-INF/grails-app/i18n/messages.properties http://mydomain.com/static/WEB-INF/classes/anyclass.class

Могу ли я отключить доступ к этим URL-адресам в Grails?

1 ответ

Решение

В Grails по умолчанию есть плагин ресурсов. И он отображает все ресурсы, такие как CSS, JS, изображения, WEB-INF, плагины и META-INF, которые вы найдете при извлечении файла войны.

Вам нужно включить следующую строку в ваш config.groovy, чтобы включить только css, js и images в статические ресурсы.

grails.resources.adhoc.includes = ['/images/**','/js/**','/css/**']

Вы также можете использовать:

grails.resources.adhoc.excludes = ['/WEB-INF/**']

исключить только WEB-INF.

Я не знаю, должен ли я сказать для получения дополнительной информации или просто для информации. В любом случае вы также можете найти некоторую информацию об этом в документации по плагину ресурсов в части конфигурации, которая имеет заголовок

Управление включениями и исключениями фильтра adhoc: grails.resources.adhoc.includes/exclude

Другие вопросы по тегам