IDEA 中使用 getRealPath()获得的是 out\artifacts 下的根目录

2017-03-25 23:41:18 +08:00
 h2so4

做文件的上传,这样我写入的文件就会出现 fileNotFound 的错误,该怎么修正到正常的 WebRoot 下呢?

2389 次点击
所在节点    问与答
3 条回复
h2so4
2017-03-25 23:54:09 +08:00
还有一个情况就是,如果我直接指定 rootPath=“/”,此时这个 / 代表的是 D 盘根目录,我 Tomcat 是按照在 D 盘的,是因为这个原因定位到 D 盘的?
h2so4
2017-03-26 01:33:23 +08:00
我想把上传的文件保存到 webroot/upload 目录下,所以想要获取 webroot 的绝对路径,可是,用以上方法获取到的都是生成的 out/artifacts/项目名 / 的路径了。
SoloCompany
2017-03-26 02:32:27 +08:00
1. out/artifacts 就是正常的 WebRoot
2. / 在哪里和你的进程启动参数( Working Directory )有关,没设定的话和 CATALINA_HOME 挂钩 不奇怪
3. 你的思想很危险啊,文件上传攻击分分钟教你做人

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/350318

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX