【发布时间】:2011-04-23 15:55:45
【问题描述】:
我已经在网上搜索了一段时间(Google 和 StackOverflow),但还没有遇到这个问题。也许我的查询不正确(请重定向!)
我在 Linux 下的 TomCat 6 上开发并设置了一个 WebApp。 Tomcat 还没有在虚拟主机环境中运行,我可以完全控制服务器。因此,.war 文件被保存到 Tomcat 的标准部署目录。我遇到的问题是图像:不同的 Web 服务提供不同大小的图像,这些图像需要以统一的大小呈现。
我下载它们并调整它们的大小没有问题,但必须存储图像的本地副本,因为如果实时完成这需要一些时间,而且会浪费大量带宽。我不会将它们保存在 Tomcat 下的 .war 临时目录下,因为服务器关闭会迫使我重新加载所有图像。
我在 /home/username/images 下创建了一个不同的目录,然后我通过常规 Apache 在不同的子域下提供服务,在 .jsp 中生成的 HTML 代码只是文件的正确 URL。如果图像不存在,效果很好。但是,由于权限问题,Tomcat 实例无法删除或覆盖已创建的文件,即使我已将存储图像的文件夹标记为 777 权限。顺便说一句,我认为不需要给它 777 perms,但是对于 755(例如),即使在尝试保存新文件时我也会遇到权限问题。
那么:有没有更好的解决方案(我考虑过数据库,但图像目录现在是 250mb,我认为没有必要让数据库过载这么多)?
【问题讨论】:
-
注意不先检查文件名就将文件保存到磁盘; theregister.co.uk/2010/10/06/net_voting_hacked
-
感谢您的提醒!
-
我实际上只是 md5(timestamp) 来获取文件名:) 不是优雅的名称,但通常确保它是唯一的。所以这里没有问题!
标签: java web-applications tomcat tomcat6