防止蜘蛛乱搞Tomcat会话

Eri*_*rce 3 java session tomcat servlets

我有一个相当新的网站(~3周龄)在Tomcat上运行,到目前为止访问量非常少.

对于上周我已经注意到了1000多个活动会话,并检查Tomcat的localhost_access*日志显示,绝大多数是从IP地址即将在此范围内:119.63.196*所有看起来属于百度日本.

这是一个小例子,来自他们登录头版的日志.119.63.196.107 - - [24/8/2011:07:02:46 0000] "GET /; JSESSIONID = 94085F76780ACFD96C8109A29446288D HTTP/1.1" 200 10311 119.63.196.44 - - [24/8/2011:07:03:21 0000] "GET /; JSESSIONID = 943133C77BB1756CF11592115BA81725 HTTP/1.1" 200 10333 119.63.196.39 - - [24/8/2011:07:03:56 0000] "GET /; JSESSIONID = 9B4384BDECF540C8628467F7AB4AB463 HTTP/1.1" 200 10311 119.63 .196.19 - - [24/8/2011:07:04:31 0000] "GET /; JSESSIONID = A0B555C3A18377D993B97D4491DD1012 HTTP/1.1" 200 10311 119.63.196.45 - - [24/8/2011:07:05:10 + 0000] "GET /; JSESSIONID = A3782FA61558BF11C4D5AC4F3DD1EC86 HTTP/1.1" 200 10311 119.63.196.23 - - [24/8/2011:07:05:53 0000] "GET /; JSESSIONID = A3AF84EF13F21492EB47FAB001A1C2E5 HTTP/1.1" 200 10311 119.63. 196.120 - - [24/8/2011:07:06:31 0000] "GET /; JSESSIONID = A7C490CEC2C7F2969772AC4050C6D761 HTTP/1.1" 200 10311 119.63.196.108 - - [24/8/2011:07:07:07 0000 ]"GET /; jsessionid = A7F769D354CB37E99843292D650D6367 HTTP/1.1"200 10311

没有任何一个IP会破坏网站,但来自此IP系列的集体请求正在激活活动会话.而且他们似乎以一种协调的方式做到这一点,因为一次一页将被定位并在20分钟内在119.63.196.*IP范围内接收~30个不同的约30个点击.然后它将转移到另一个页面......这几天整天都在进行,并且正在进行Tomcat会话.

我确实将非活动会话超时设置得相当高(720分钟),也许我需要将这个数字降低很多.也许百度日本正在进行频繁的检查,因为它认为页面因链接的变化而发生了变化(即jsessionid总是不同)?

谢谢阅读.我欢迎任何/所有建议!

埃里克

Cod*_*odo 5

如果配置,Tomcat 7可以防止创建数千个会话CrawlerSessionManagerValve.有一个简短的文档.

此外,您可能需要考虑阻止Tomcat将会话ID放入URL中,因为它会显示在搜索引擎中.再次从Tomcat 7开始,您可以配置:

<session-config>
   <tracking-mode>COOKIE</tracking-mode>
</session-config>
Run Code Online (Sandbox Code Playgroud)