日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

java web判断服务器是否是本机

發(fā)布時(shí)間:2025/3/8 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java web判断服务器是否是本机 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1,如何獲取瀏覽器的ip

Java代碼??
  • /***?
  • ?????*?獲取客戶端ip地址(可以穿透代理)?
  • ?????*?@param?request?
  • ?????*?@return?
  • ?????*/??
  • ????public?static?String?getClientIpAddr(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".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("WL-Proxy-Client-IP");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("HTTP_X_FORWARDED_FOR");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("HTTP_X_FORWARDED");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("HTTP_X_CLUSTER_CLIENT_IP");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("HTTP_CLIENT_IP");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("HTTP_FORWARDED_FOR");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("HTTP_FORWARDED");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("HTTP_VIA");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getHeader("REMOTE_ADDR");????
  • ????????}????
  • ????????if?(ip?==?null?||?ip.length()?==?0?||?"unknown".equalsIgnoreCase(ip))?{????
  • ????????????ip?=?request.getRemoteAddr();????
  • ????????}????
  • ????????return?ip;????
  • ????}??
  • ????public?static?String?getIpAddr(HttpServletRequest?request)?{??
  • ????????String?ip?=?request.getHeader("X-Real-IP");??
  • ????????if?(null?!=?ip?&&?!"".equals(ip.trim())??
  • ????????????????&&?!"unknown".equalsIgnoreCase(ip))?{??
  • ????????????return?ip;??
  • ????????}??
  • ????????ip?=?request.getHeader("X-Forwarded-For");??
  • ????????if?(null?!=?ip?&&?!"".equals(ip.trim())??
  • ????????????????&&?!"unknown".equalsIgnoreCase(ip))?{??
  • ????????????//?get?first?ip?from?proxy?ip??
  • ????????????int?index?=?ip.indexOf(',');??
  • ????????????if?(index?!=?-1)?{??
  • ????????????????return?ip.substring(0,?index);??
  • ????????????}?else?{??
  • ????????????????return?ip;??
  • ????????????}??
  • ????????}??
  • ????????return?request.getRemoteAddr();??
  • ????}??
  • ?

    ?

    2,如何判斷服務(wù)器是否是本機(jī)

    Java代碼??
  • /***?
  • ?????*?服務(wù)器是否是本機(jī)?
  • ?????*?@param?request?
  • ?????*?@return?
  • ?????*/??
  • ????public?static?boolean?isLocalIp(HttpServletRequest?request){??
  • ????????String?ip=WebServletUtil.getClientIpAddr(request);??
  • ????????return?ip.equals("127.0.0.1")||ip.equals("localhost")||ip.equals("0:0:0:0:0:0:0:1");??
  • ????}??
  • ?3,應(yīng)用:

    Java代碼??
  • /***?
  • ?????*?favicon.ico??
  • ?????*?@throws?IOException??
  • ?????*/??
  • ????@RequestMapping(value?=?"/favicon.ico")??
  • ????public?ResponseEntity<byte[]>?faviconIco(HttpServletRequest?request)?throws?IOException?{??
  • ????????HttpHeaders?headers?=?new?HttpHeaders();??
  • ????????headers.setContentType(MediaType.IMAGE_PNG);??
  • ????????String?faviconIcoName="sms-4.ico";??
  • ????????headers.set(Constant2.CONTENT_DISPOSITION,WebServletUtil.getContentDisposition(true,?faviconIcoName));??
  • ????????///home/whuang/software/apache-tomcat-7.0.53/webapps/ROOT/??
  • ????????String?webappPath=null;??
  • ????????if(WebServletUtil.isLocalIp(request)){//服務(wù)器在本機(jī)(訪問ip為127或localhost)??
  • ????????????webappPath=WebServletUtil.getRealPath(request);??
  • ????????}else{??
  • ????????????webappPath=DictionaryParam.get(Constant2.DICTIONARY_GROUP_GLOBAL_SETTING,?"WEB-INF_LOC");??
  • ????????}??
  • ????????return?new?ResponseEntity<byte[]>(FileUtils.getBytes4File(??
  • ????????????????webappPath??
  • ????????????????+"WEB-INF/static/img/"+faviconIcoName),??
  • ??????????????????????????????????????????headers,?HttpStatus.CREATED);??
  • ??
  • ????}??
  • ?

    4,如何獲取服務(wù)器部署的本地路徑

    Java代碼??
  • public?static?String?getRealPath(HttpServletRequest?request)?{??
  • ????????return?getRealPath(request,??"\\");??
  • ????}??
  • ????/**?
  • ?????*?獲取相對(duì)地址的絕對(duì)地址?
  • ?????*??
  • ?????*?@param?request?
  • ?????*?@param?relativePath?
  • ?????*?@return?
  • ?????*/??
  • ????public?static?String?getRealPath(HttpServletRequest?request,?String?relativePath)?{??
  • ????????return?request.getSession().getServletContext().getRealPath(relativePath);??
  • ????}??
  • ?

    總結(jié)

    以上是生活随笔為你收集整理的java web判断服务器是否是本机的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。