基本上我有一个java servlet web应用程序,它使用apache tomcat v9.0作为它的服务器,问题是我需要将我的数据库保存在文件系统中并指定如果用户请求像{{{{ 1}} apache应该知道db位于文件系统并用图像回复给用户。
感谢所有回复:)
答案 0 :(得分:1)
可以将Tomcat配置为从磁盘上的任何位置读取文件,并在特定URL上提供这些文件。此配置与您的应用程序配置完全分开 - 如果您愿意,您可以启动Tomcat并让它从磁盘提供静态文件,而不运行任何Web应用程序。配置在Tomcat的server.xml配置文件中,看起来像这样(需要添加的位为红色):
<Host appBase="webapps"
autoDeploy="false" name="localhost" unpackWARs="true"
xmlNamespaceAware="false" xmlValidation="false">
...
<Context docBase="/home/stuff" path="/static" />
</Host>
在<Context>
元素中添加了<Host>
元素。 Context有两个属性:docBase是磁盘上包含静态文件的目录,path是您要为其提供文件的URL。
确保Tomcat有权读取docBase中的文件。
使用上面的示例server.xml片段,如果我在/ home / stuff中有一个名为steve.jpg的图像,我可以使用http://localhost:8080/static/steve.jpg通过我的本地Tomcat实例访问它。