conf/server.xml 中的更改在运行时似乎没有任何影响

Changes in conf/server.xml does not seem to have any effect during runtime

这是我所知道的:

这是我所做的:

    <Context docBase="D:\uploads" path="/uploads"/>

但这没有任何效果。在咨询 http://localhost:8080/uploads/file.png or http://localhost:8080/uploads 时,我收到 HTTP 状态 404 错误。

所以我想知道的是:

  1. 我做错了什么?如何将我的上传文件夹添加到 Tomcat?
  2. 上传文件有什么更好的方法吗? 因为我想知道如果我想部署我的 应用程序到没有 D:\uploads.
  3. 的另一台服务器

更改 docBase 属性。使用 D:/uploads(带 斜杠 )而不是 D:\uploads(带 反斜杠 )。

在处理 Java 中的文件时,您可以安全地使用 /斜杠,而不是 反斜杠 ) 在所有平台上。


关于您在评论中提到的从 IDE 和 bin/startup.bat 启动 Tomcat 时的差异:当您从 Tomcat 启动时,很有可能IDE,它使用的 context.xml 与您的 Tomcat 使用的不同。只需查看 IDE 中的 Tomcat 设置。


如何存储上传的文件是 Stack Overflow 上的一个常见话题。只要环顾四周,您就会惊讶于这个话题的流行程度。

如果您不愿意将文件存储在 D:/uploads 中,或者您将有其他服务器访问这些文件,您可以考虑将它们存储在网络中的某个位置。根据您的要求,您可以使用一台专用服务器来存储您的文件,或者只共享当前服务器中包含文件的文件夹。正确的决定总是取决于您的要求。