Je voulais une réponse à cela moi-même, et je n'étais pas satisfait de la réponse de JDBCRealm.
Les dossiers cachés par défaut "WEB-INF" et "META-INF" sont codés en dur dans la logique des ressources statiques, donc l'utilisation du même mécanisme semble extrêmement difficile. Vous devez remplacer ou modifier une combinaison de DefaultServlet, StandardContext et StandardContextValve. C'est le bordel.
Mais il y a deux façons simples que j'ai essayées pour accomplir le filtrage que vous recherchez.
L'utilisation d'un Filter
Vous pouvez écrire un filtre Servlet générique pour retourner des erreurs 404 pour tout fichier correspondant à une liste. Vous pouvez configurer cette liste comme Environment Entries dans context.xml, dans properties file sur le chemin de classe, stockée dans une base de données, ou quelle que soit votre préférence (même en tant que chaînes codées en dur, si vous êtes une sorte de masochiste).
L'utilisation d'un Valve(Tomcat spécifique)
Tomcat Vannes accomplir à peu près la même chose que les filtres, mais à un niveau inférieur. Ils ne font pas partie du Servlet Spec, de sorte que votre application ne sera pas portable vers d'autres conteneurs de servlet. En outre, dans mes expériences avec cela, envoyer 404 réponses ne passent pas par le même canal que 404 réponses envoyées normalement dans votre application (par exemple, si vous installez 404 pages ou gestionnaires personnalisés, ils ne sont pas utilisés quand un 404 revient d'une valve