观点一:(较为赞同)

安全性不是真正的原因,因为jsp是要解析后才显示到浏览器的,即使用户知道你jsp的路径,也不可能通过浏览器看到jsp源码的,而如果是通过其它手段入侵服务器的话,放在WEB-INF又和放在别的地方有什么区别呢???
真正的原因是,对于早期直接嵌入java代码的jsp,是直接给出jsp路径给用户访问的,这种情况恰恰不能放在WEB-INF,而到了现在的mvc模 式,jsp已经不是曾经那个包含完整逻辑的jsp,而仅仅充当view层的模板,必须要填入model数据后进行渲染,才能生成可读的页面,这样的模板是 不能让用户直接访问的,直接访问的话要么是一堆各种空白,或者一堆占位符,甚至一堆NullPointException,所以需要放到WEB-INF 里。补充一下,“安全性问题”指的是“不允许你访问,否则会对我不好”,而这里的情况其实是“不建议你访问,否则会对你不好”,应该属于健壮性的范畴。

观点二:

放到WEB-INF下的Jsp文件,如果你直接去访问这个Jsp是不可以的,必须通过Action的跳转,这样就能够理解为什么安全性高了,对 于用户是不可见的,对于一些对于用户,可以直接访问的,如,登录,注册页面,可以直接放在webroot下,这个也是根据你系统的需求了。

观点三:

通过设置过滤器,放在webroot下面的文件也可以实现不能直接访问。所以说放在哪里就看习惯是什么样了。
一般项目都是要求隐藏性的,只让客户通过请求访问而不是直接访问jsp页面。若放在webroot下面,肯定要加一个过滤器阻止所有对*.jsp的访问。只要比较的话:
放在webroot下面:优点,程序结构清晰,便于编码和维护;缺点,要加过滤器。
放在web-inf下面:优点,不用过滤器;缺点,打乱了程序结构,编码和维护麻烦

观点四:

为了减少风险,可以把这些页面文件移到WEB-INF
目录下。基于Servlet的声明,WEB-INF不作为Web应用的公共文档树的一部分。因此,WEB-INF 目录下的资源不是为客户直接服务的。我们仍然可以使用WEB-INF目录下的JSP页面来提供视图给客户,客户却不能直接请求访问JSP。JSP存放在 WEB-INF 目录下更为安全。

转载于:https://www.cnblogs.com/qlqwjy/p/7619700.html

jsp文件放在WebRoot下还是WebInfo下相关推荐

  1. 关于jsp页面是放在webroot目录下和web-inf下优缺点

    CSDN问题: jsp放在webroot目录下 这样就可以让用户直接访问,jsp放在web-inf目录下就必须要通过请求才能访问. 因此放在web-inf下jsp页面显得要安全.  既然这样 ,那是不 ...

  2. JSP文件放在WebContent下和放在WEB-INF下的区别

    其实对于JSP文件来说,放在这两个文件夹下都是可行的,但还是有一点区别的:放在WEB-INF目录下的文件不能通过url直接访问到. 具体放在哪里可以根据自己的需求去决定.

  3. jsp文件放在WEB-INF下和放在WebContent下的区别

    WEB-INF是受保护的目录,WEB-INF里面的文件只可以是servlet去访问,不能通过直接在地址栏中去输入地址访问 Webcontent里面的文件可以直接去地址栏中输入访问,index.jsp就 ...

  4. ant文件放在ps的哪里_下完关于PS的pat文件放哪里?怎么使用?

    回答: 基础教程[第一课]论坛签名小字的种类和使用方法的讲解 http://www.52zt.cn/viewthread.php?tid=6180&fromuid=74739 [第二课]PS改 ...

  5. 为什么将.jsp 文件放在WEB-INF 目录中?

    问题: 以 Maven 为例,当启动一个新的 web 项目时,结构与此相同/相似: Meu Projeto|- src|- main|- java|- resources|- webapp|- WEB ...

  6. 解决/WEB-INF目录下的jsp页面引入webRoot下的Js、css和图片的问题

    通常把jsp页面放在webRoot的/WEB-INF下可以防止访问者直接输入页面. 而webRoot的/WEB-INF下的页面是受保护的,用户无法通过形如http://localhost:8080/t ...

  7. Tomcat配置,直接打开jsp文件访问web

    javaweb的项目都是在myeclipse中写的,而这个软件运行缓慢,使用十分不便,因此在上次实验中用到了一种新的方法,在网上查到的可以用的,解决了这个问题.具体总结一下. 我们的myeclpse是 ...

  8. 小程序https域名校验文件放在根目录

    1. 下载校验文件 微信公众号平台 - 开发管理 - 开发设置 - 业务域名 2. 将校验文件放在服务器nginx - html 目录下 3. 修改nginx.conf 我这里配置的https主要是用 ...

  9. eclipse中jsp文件运行后404的错误

    eclipse struts2过滤器导致的jsp文件运行后404的错误 原因:1.工作区文件名中带有汉字!(我的原因) 2.jsp文件放在了WEB-INF中,应该放在webapp中,与WEB-INF同 ...

  10. 将多个文件夹下的文件放在一个文件下下

    将多个文件夹下的文件放在一个文件下下## 标题 import os import shutil def copyfile(filepath,newpath): #获取当前文件下的文件名 filenam ...

最新文章

  1. docker搭建ssr
  2. git提交代码到github时出现everything up-to-date,但是代码没有上传成功
  3. led灯条维修_led硅胶线条灯不亮的8大原因,怎样识别led灯带的质量
  4. 写了多年代码,你会 StackOverflow 吗
  5. ios 后台下载,断点续传总结
  6. virtio+ovs转发原理和性能分析
  7. 视觉SLAM笔记(18) Sophus
  8. python蛇术_小蛇学python(16)numpy高阶用法
  9. shell统计游戏活跃用户数之改进过程分析
  10. Path of Equal Weight (30 分)
  11. Android编码规范
  12. C语言小项目——电子秒表(毫秒级)
  13. 联想笔记本怎么进入pe系统_联想笔记本电脑怎么进入PE?
  14. 美团点评旅游搜索召回策略的演进
  15. 幸运的人更幸运 - 节选
  16. 有道云笔记markdown教程
  17. c++ bool类型
  18. 说大数据杀熟,这锅可不背!
  19. Matlab 2018a与SolidWorks联合仿真——如何将SolidWorks模型以xml格式导出至Matlab中
  20. C++以及java学习方法和路线

热门文章

  1. 江苏新一代物联网全省商用 全省信号覆盖率达97.5%
  2. 《C#高效编程》读书笔记11-理解短小方法的优势
  3. windows环境tomcat8配置Solr5.5.1
  4. 某中介无线组网及***接入应用案例
  5. JNI学习-- C调用java方法
  6. Actionscript 3.0 迁移指南
  7. xyplorer保存设置失败_腾讯企点客服如何设置敏感词监控?
  8. linux进程共享内存通信,linux下进程通信方式--共享内存
  9. PowerMockito问题解决一则
  10. 1177: 按要求排序(指针专题)_排序算法之快速排序