tomcat - 在 tomcat 中托管一个位于 war 文件之外的 json 文件

标签 tomcat web configuration server.xml

我有一个 json 文件,它位于 tomcat 的 webapps 文件夹中,但在我的项目文件夹之外。我需要通过 http:localhost:8080/"somePath"在浏览器中查看此文件。

我尝试添加行:Context docBase="C:/Users/abc/tomcat/webapps"path="/static"/> 到 server.xml 并尝试访问 URL: http:localhost:8080/static/file.json 但我找不到 404。

最佳答案

最好不要在 server.xml 中定义 Context 节点:https://tomcat.apache.org/tomcat-8.0-doc/config/context.html#Defining_a_context

而是创建一个文件

$CATALINA_BASE/conf/[enginename]/[hostname]/static.xml

所以在你的情况下我想是:

C:/Users/abc/tomcat/conf/Catalina/localhost/static.xml

并在其中放置一个Context节点:

<Context path="/static/"
         docBase="C:/Users/abc/tomcat/webapps/static_files/">
</Context>

这里的 json 文件位于子目录 static_files 中。我不会将整个 webapps 目录暴露给 static 路径。 docBase 甚至不需要在 webapps 中,它可以指向文件系统上任何位置的目录。

重新启动,您的 json 文件将在

http:localhost:8080/static/file.json

关于tomcat - 在 tomcat 中托管一个位于 war 文件之外的 json 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33658723/

相关文章:

spring - spring mvc中的Excel导出配置

php - 用户 'a9802737_mystor' @'10.1.1.31' 的访问被拒绝(使用 000webhost.com)

security - 有没有办法让HTTP请求头不可变?

java - 使用 Liferay 上传大文件(GB 数据)

c# - 如何识别缺少的 ConfigurationElement?

PHP - 如何从新创建的用户获取信息

apache - 通过 AJP 将 REMOTE_USER 转发到 tomcat(例如,用于 shibboleth)

java - Tomcat 中的 JMS : creation a queue per client?

java - Spring 4 websockets 导致大量异常

java - 更改 ROOT [Tomcat] 名称时拒绝 403 访问