0

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

4

1 回答 1

1

如果您需要一个安全的地方将文件上传到您的 web 应用程序,您需要将它们完全放在任何 web 应用程序的文档库之外——这包括使用符号链接将它们“挂载”到您的 URL 空间中,方法是利用 DefaultServlet 为这些位提供服务你。否则,您将面临在取消部署 web 应用程序时让 Tomcat 删除所有上传文件的风险。

如果您不必选择升级到 Tomcat 7.0(我强烈推荐),那么我建议您编写自己的 servlet,将其映射到 /myapp/files/*,然后让该 servlet 从上传目录并将这些位提供给客户端。有一些方法可以让 DefaultServlet 为您执行此操作(而不是本质上在您自己的 servlet 中复制其全部功能集),但它并不总是能很好地工作,并且可能在旧版本的 Tomcat 中根本无法工作,因为 DefaultServlet 假定它映射到“/”而不是“/files”之类的东西。

于 2012-05-23T19:07:07.340 回答