使用 EhCache 关于临时目录的一个注意事项
来源:互联网 发布:淘宝提醒发货不见了 编辑:程序博客网 时间:2024/06/06 02:37
一般 ehcache 的配置中默认的 diskStore 的路径设置的是 java.io.tmpdir ,等于是当前系统的临时目录。
但是在 Tomcat 和 Resin 这两个应用服务器上,临时目录是有区别的,在 Tomcat 上运行的应用通过 java.io.tmpdir 系统变量获取到的路径是 Tomcat 目录下的 temp 子目录,而 Resin 返回的是系统的临时目录,linux下可能就是 /tmp
在 Linux 下如果我们使用的是 root 账号来启动 Tomcat 和 Resin 的话,那这个问题就不存在。但是我们非常不建议用 root 来启动 Tomcat 和 Resin,这时候我们会单独的创建一个非特权账号,假设该账号名为 www 来运行应用服务器。
我们需要将 Tomcat 和 Resin 所在的目录授权给 www 账号,这样应用服务器的日志文件才能正常的写入,但是由于 Resin 的临时目录是对应系统的 /tmp 目录,因此如果应用中使用了 ehcache 并设置了存储路径为 java.io.tmpdir ,你就会发现启动的时候报错,提示没有在 /tmp 目录下创建文件的权限,这是因为 www 账号没有写 tmp 目录的权限。
解决的办法就是修改 ehcache 的 diskStore 配置的值为 user.home ,将存储文件路径指定到用户的主目录下即可。
而 Tomcat 就没有这个问题,因为它的临时目录在 {tomcat}/temp ,而整个 {tomcat} 都已经授权给 www 账号了。
原文:http://www.oschina.net/question/12_2368
- 使用 EhCache 关于临时目录的一个注意事项
- EhCache 关于临时目录的注意事项
- 关于 STM_SETIMAGE 的使用 有一个注意事项
- 关于ehcache的简单使用
- 关于ehcache缓存的使用
- 使用DB2数据库临时表的注意事项
- MySQL的临时表使用注意事项
- 关于浏览器下载文件的临时目录
- 关于Ehcache的使用及相关解释
- 一个关于临时对象的BUG(上)
- 一个关于临时对象的BUG(下)
- 一个关于临时对象的BUG
- 关于oracle临时表的一个问题
- 关于#ifdef的一个注意事项
- 在T-SQL中使用临时表的注意事项
- 在T-SQL中使用临时表的注意事项
- 开发中使用临时表的应用场景以及注意事项
- 关于oracle 临时表的使用
- 内存管理--page.s memory.c源码分析
- LeetCode 题解(128): Majority Element
- java 单链集合实现
- Java基础---网络编程
- WIFI基本知识整理
- 使用 EhCache 关于临时目录的一个注意事项
- Effective C++ 条款27
- 大根堆-小根堆-堆排序-C实现
- frame,iframe,frameset之间的关系与区别
- 黑马程序员----多态和内部类、异常
- 设置环境变量的三种方法
- 【MySQL】常见的mysql 进程state
- android开发中的自定义属性用法详解
- php 异步上传原理(iframe)