JSP»ñÈ¡ÕæÊµIPµØÖ·
ÔÚJSPÀ»ñÈ¡¿Í»§¶ËµÄIPµØÖ·µÄ·½·¨ÊÇ£ºrequest.getRemoteAddr£¨£©£¬ÕâÖÖ·½·¨Ôڴ󲿷ÖÇé¿ö϶¼ÊÇÓÐЧµÄ¡£µ«ÊÇÔÚͨ¹ýÁË
Apache£¬SquidµÈ·´Ïò´úÀíÈí¼þ¾Í²»ÄÜ»ñÈ¡µ½¿Í»§¶ËµÄÕæÊµIPµØÖ·ÁË¡£Èç¹ûʹÓÃÁË·´Ïò´úÀíÈí¼þ£¬ÓÃ
request.getRemoteAddr£¨£©·½·¨»ñÈ¡µÄIPµØÖ·ÊÇ£º127.0.0.1»ò
192.168.1.110£¬¶ø²¢²»Êǿͻ§¶ËµÄÕæÊµ£É£Ð¡£
¾¹ý´úÀíÒÔºó£¬ÓÉÓÚÔÚ¿Í»§¶ËºÍ·þÎñÖ®¼äÔö¼ÓÁËÖмä²ã£¬Òò´Ë·þÎñÆ÷ÎÞ·¨Ö±½ÓÄõ½¿Í»§¶ËµÄ
IP£¬·þÎñÆ÷¶ËÓ¦ÓÃÒ²ÎÞ·¨Ö±½Óͨ¹ýת·¢ÇëÇóµÄµØÖ··µ»Ø¸ø¿Í»§¶Ë¡£µ«ÊÇÔÚת·¢ÇëÇóµÄHTTPÍ·ÐÅÏ¢ÖУ¬Ôö¼ÓÁËX£FORWARDED£FORÐÅÏ¢¡£ÓÃÒÔ¸ú×Ù
ÔÓеĿͻ§¶ËIPµØÖ·ºÍÔÀ´¿Í»§¶ËÇëÇóµÄ·þÎñÆ÷µØÖ·¡£µ±ÎÒÃÇ·ÃÎÊindex.jsp/ʱ£¬Æäʵ²¢²»ÊÇÎÒÃÇä¯ÀÀÆ÷ÕæÕý·ÃÎʵ½ÁË·þÎñÆ÷ÉϵÄindex.jsp
Îļþ£¬¶øÊÇÏÈÓÉ´úÀí·þÎñÆ÷È¥·ÃÎÊindex.jsp
£¬´úÀí·þÎñÆ÷ÔÙ½«·ÃÎʵ½µÄ½á¹û·µ»Ø¸øÎÒÃǵÄä¯ÀÀÆ÷£¬ÒòΪÊÇ´úÀí·þÎñÆ÷È¥·ÃÎÊindex.jspµÄ£¬ËùÒÔindex.jspÖÐͨ¹ý
request.getRemoteAddr£¨£©µÄ·½·¨»ñÈ¡µÄIPʵ¼ÊÉÏÊÇ´úÀí·þÎñÆ÷µÄµØÖ·£¬²¢²»Êǿͻ§¶ËµÄIPµØÖ·¡£
ÓÚÊǿɵóö»ñµÃ¿Í»§¶ËÕæÊµIPµØÖ·µÄ·½·¨Ò»£º
public String getRemortIP(HttpServletRequest request) {
if (request.getHeader("x-forwarded-for") == null) {
return request.getRemoteAddr();
}
return request.getHeader("x-forwarded-for");
}
»ñµÃ¿Í»§¶ËÕæÊµIPµØÖ·µÄ·½·¨¶þ£º
public String getIpAddr(HttpServletRequest request) {
String ip = request.getHeader("x-forwarded-for");
if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
ip = request.getHeader("Proxy-Client-IP");
}
if(ip == null || ip.length() == 0 || "unknown".equalsIgno
Ïà¹ØÎĵµ£º
//JSP½ûÖ¹»º´æ´úÂë
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);
//ÍøÂçÉϵIJ»ÄÜÕýÈ·ÔËÐдúÂë²Î¿¼
if(request.getProtocol().compareTo("HTTP/1.0")==0)
{
......
1.µ÷ÓÃJSPÒ³ÃæÏÔʾÂÒÂë
ͨ¹ýä¯ÀÀÆ÷µ÷ÓÃJSPÒ³Ãæ£¬ÔÚ¿Í»§¶Ëä¯ÀÀÆ÷ÖÐËùÓеÄÖÐÎÄÄÚÈݳöÏÖÂÒÂë¡£
solution£º
Ê×ÏÈÈ·Èϱ¾JSPÔÚ±à¼Æ÷Öб£´æÊ±£¬Ê¹ÓõÄÊÇGBKµÄ±àÂë¸ñʽ£¬È»ºóÔÚJSPÒ³ÃæµÄ¿ªÊ¼²¿·ÖÌí¼Ó <%@ pageEncoding="GBK" %>¾Í¿ÉÒÔ½â¾öÖÐÎÄÂÒÂëÎÊÌâ¡£
2.µ÷ÓÃServletÒ³ÃæÏÔʾÂÒÂë
ͨ¹ýä¯ÀÀÆ÷µ÷ÓÃServlet£¬ServletÔÚä¯ ......
²úÉúÑéÖ¤ÂëͼƬµÄÎļþ-----image.jsp
<%@ page contentType="image/jpeg" import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*" %>
<%!
Color getRandColor(int fc,int bc){//¸ø¶¨·¶Î§»ñµÃËæ»úÑÕÉ«
Random random = new Random();
&nb ......
filter¹¦ÄÜ.ËüʹÓû§¿ÉÒԸıäÒ»¸ö requestºÍÐÞ¸ÄÒ»¸öresponse. Filter ²»ÊÇÒ»¸öservlet,Ëü²»ÄܲúÉúÒ»¸öresponse,ËüÄܹ»ÔÚÒ»¸örequestµ½´ïservlet֮ǰԤ´¦Àírequest,Ò²¿ÉÒÔÔÚÀ뿪 servletʱ´¦Àíresponse.»»ÖÖ˵·¨,filterÆäʵÊÇÒ»¸ö¡±servlet chaining¡±(servlet Á´). Ò»¸öfilter °üÀ¨:
1. ÔÚservlet±»µ÷ÓÃ֮ǰ½Ø»ñ; ......
½â¾öAJAX(JSP)ÖÐÎÄÂÒÂë»òÌØÊâ·ûºÅ£¨&£©µÄ´«µÝÎÊÌâ----> ±¾ÈËÔ´´£¨244796562@qq.com£©
************************js******************************
...
...
var s = encodeURIComponent("ÖÐÎÄ&English&@#$%!");
xmlReq.send("test", "txt=" + s, callback, callerror);//ͨ¹ýXMLHTTPRequest·¢ËÍ×Ö·ûÊý¾ ......