Struts应用经验(之二)
来源:互联网 发布:江西省网络答题 编辑:程序博客网 时间:2024/05/20 13:15
2. 把jsp放到WEB-INF后以保护JSP源代码
为了更好地保护你的JSP避免未经授权的访问和窥视, 一个好办法是将页面文件存放在Web应用的WEB-INF目录下。
通常JSP开发人员会把他们的页面文件存放在Web应用相应的子目录下。一个典型的商店应用程序的目录结构如图2所示。跟catalog (商品目录)相关的JSP被保存在catalog子目录下。跟customer相关的JSP,跟订单相关的JSP等都按照这种方法存放。
这种方法的问题是这些页面文件轻易被偷看到源代码,或被直接调用。某些场合下这可能不是个大问题,可是在特定情形中却可能构成安全隐患。用户可以绕过Struts的controller直接调用JSP同样也是个问题。
为了减少风险,可以把这些页面文件移到WEB-INF 目录下。基于Servlet的声明,WEB-INF不作为Web应用的公共文档树的一部分。因此,WEB-INF 目录下的资源不是为客户直接服务的。我们仍然可以使用WEB-INF目录下的JSP页面来提供视图给客户,客户却不能直接请求访问JSP。
采用前面的例子,图3显示将JSP页面移到WEB-INF 目录下后的目录结构
假如把这些JSP页面文件移到WEB-INF 目录下,在调用页面的时候就必须把"WEB-INF"添加到URL中。例如,在一个Struts配置文件中为一个logoff action写一个Action mapping。其中JSP的路径必须以"WEB-INF"开头。如下所示:请注重粗体部分.
这个方法在任何情况下都不失为Struts实践中的一个好方法。是唯一要注重的技巧是你必须把JSP和一个Struts action联系起来。即使该Action只是一个很基本的很简单JSP,也总是要调用一个Action,再由它调用JSP。
最后要说明的是,并不是所有的容器都能支持这个特性。WebLogic早期的版本不能解释Servlet声明,因此无法提供支持,据报道在新版本中已经改进了。总之使用之前先检查一下你的Servlet容器。
资料引用:http://www.knowsky.com/361433.html
- Struts应用经验(之二)
- Struts应用经验(之三)
- Struts应用经验(之四)
- Struts入门经验(二)
- Struts入门经验(二)
- Struts应用经验(之一)
- Struts应用的七个经验
- Struts应用的七个经验
- Struts应用的七个经验
- (二)struts之原理
- Jakarta Struts应用的七个经验(3)
- Jakarta Struts应用的七个经验(2)
- Jakarta Struts应用的七个经验(1)
- Jakarta Struts应用的七个经验(3)
- Jakarta Struts应用的七个经验(2)
- Jakarta Struts应用的七个经验(1)
- Struts原理与应用(二)
- Struts原理与应用(二)
- LOCK(3)-DDL LOCK
- [2008-04-09 14:32]在IDA Pro Plug-in中实现消息循环和调用外部函数
- struts使用经验
- small points
- Struts应用经验(之一)
- Struts应用经验(之二)
- JavaWEB开发-Servlet监听器
- Struts应用经验(之三)
- 登录错误-----ORA-12560: TNS: 协议适配器错误
- Struts应用经验(之四)
- 《全程软件测试》电子课件 陆续可下载
- struts入门
- No data was received to import. Either no file name was submitted,
- Struts 配置与组件介绍