在 Tomcat 中更改 Apache 文件上传的临时目录

Change Temporary Directory for Apache File Upload in Tomcat

我在尝试更改 "javax.servlet.context.tempdir" 在我们的 Tomcat 的 ServletContext 中的默认位置时遇到困难,但它无法正常工作。

这是它的长短。在调试器中检查我们的 ServletContext 时,属性 "javax.servlet.context.tempdir" 是只读属性,并且在 ServletContext 上调用 setAttribute 方法时不会更改。

我们如何更改此属性?

javax.servlet.context.tempdir ServletContext 属性可以通过两种方式之一设置。

在您的 server.xml 中作为 Host 元素的属性。

<Host name="localhost" workDir="directory_location">
    ...
</Host>

Tomcat 8 reference on Host

或者在您的 context.xml 中作为 Context 元素的属性。

<?xml version='1.0' encoding='utf-8'?>
<Context workDir="directory_location">
    ...
</Context>

Tomcat 8 reference on Context

警告

更改此值也会产生副作用,即更改 tomcat 将其编译的 JSP 文件存储到 类.

的位置