你可以写一个过滤器,在SESSION里取得用户信息,判断用户是否有访问此页权限,IF TRUE,访问,ELSE 跳到你指定的页面

解决方案 »

  1.   

    在你的web服务器配置中加过滤器,判断如果是复制的内容就转到首页。
    配置文件一般是web.xml
    增加过滤器<filter>
    <filter-name>Filter1</filter-name>
    <filter-class>CFilter1</filter-class>
    <init-param>
    <param-name>parem1</param-name>
    <param-value>value1</param-value>
    </init-param>在CFilter1中进行判断URL地址是否合法if (httpquest.getHeader("REFERER")!= null) {}这样就可以达到你的要求
      

  2.   

    回1楼,如何判断用户是否有访问此页权限?这个是重点,需要好好设计一下。
    回2楼,该如何判断URL地质是否合法呢?
    if (httpquest.getHeader("REFERER")!= null) {}
    就行了吗?
      

  3.   

    我测试过的httpquest.getHeader("REFERER")!= null就可以
    如果判断是否有权限在CFilter1实现就是了,可以用,实现方式有多种,看自己如何做了httpquest.getRequestURI();
    httpquest.getContextPath();
      

  4.   

      想了一下,2楼的办法也是有缺陷的。httpquest.getHeader("REFERER")的作用是得到上页的URL。
      假设一个网上银行系统,我前四个页面都是通过正常流程的,第四个页面需要我提交一些信息,若不输入就不能进入下一页。但是如果我并没有输入信息,同时又知道第五个页面的URL,那我还是能绕过流程访问该页面的。因为上一个页面也是该系统的页面,所以httpquest.getHeader("REFERER")的返回值不是空。
      希望大家继续帮忙,集思广益。 
      

  5.   

    通过<init-param>
    <param-name>parem1</param-name>
    <param-value>value1</param-value>
    </init-param>
      

  6.   

    恕我愚钝,还是不解。 能举个具体点的例子佐证吗? 比如说我要提交一个form才能进入下一个页面,但如果进入了该页面却并不提交,可还是能通过访问URL进入下一个页面啊!在过滤器中该增加哪些关键字就能起作用呢?