2012-05-21 23 views
0

我需要上传文件到我的webapp以外,并且可以在浏览器之后提供它们。所以看了很多帖子后,我决定创建一个符号链接。我有一个问题,因为我已经在tomcat5/Catalina/loclahost/myApp.xml中有一个上下文。 我给它添加了属性allowlinking = true和override = true。 但我无法使用我的浏览器访问我上传的文档。 我认为这两个重定向不能一起工作,但我不知道如何以其他任何方式进行。 所以任何想法将受到欢迎与DocBase的Tomcat SymLink

+1

你可以升级到Tomcat 6吗? TC6有“别名”,我认为它会做你想做的事。 –

+0

不,我不能,但我的信息我会看看这个。 –

+0

您是否需要嵌套URL空间?例如,/ myapp/upload和/ myapp/files/...? –

回答

1

如果你需要一个安全的地方,将文件上传到你的web应用程序,你需要把它们完全在任何Web应用程序的文档库之外 - 这包括使用符号连接“摩的”到您的通过利用DefaultServlet为您提供这些位的URL空间。否则会导致在卸载Web应用程序时让Tomcat删除所有上传的文件。

如果您不必升级到Tomcat 7.0(我强烈推荐),那么我建议您编写自己的servlet,将其映射到/ myapp/files/*,并让该servlet读取来自上传目录的文件并将这些位提供给客户端。有很多方法可以让DefaultServlet为您完成这些工作(而不是实质上在您自己的servlet中复制它的完整功能集),但它并不总是很好,并且在旧版Tomcat中可能根本不起作用,因为DefaultServlet假定它映射到“/”而不是像“/ files”。

+0

我最终这一直在等待,直到一切工作正常。我没有使用默认的servlet。感谢您的支持。 –