본문 바로가기

Server Oriented

(191)
리눅스 서버에서 갑작스런 Disk Full 경험시, 삭제된 파일을 프로세스가 잡고 있는 문제 http://greenfinger.tistory.com/m/180
세션이 살아 있는지 체크 .jsp 에서 세션이 살아 있는지 체크할 때 대체로는if(session==null){ ... } 과 같이 null 만 체크한다. 그런데, session.invalidate(); 를 실행할 때는.. session!=null 인 상태다. 그러므로,if(session==null || !request.isRequestedSessionIdValid()){ ... } 와 같이 isRequestedSessionIdValid() 를 추가한다.
df -h 체크하면 100% use 혹시 apache 를 사용하고 있다면,/usr/local/apache2/logs/ 에 쌓이는 파일을 체크해 보자.실제 경로는 어떻든 apache 경로의 logs 디렉토리를 살펴보고파일 사이즈가 큰 파일을 0 사이즈로 만들자. mv -f access_log access_log.bak (이 상태에선 access_log 가 없다)cp access_log.tmp access_log (access_log.tmp 파일은 사이즈 0 파일로 임시로 만든 것, 이제 제로 사이즈의 access_log 생성)
ajax 로 데이타를 처리할 때 request 의 Referer 를 반드시 체크할 것 String referer = request.getHeader("Referer"); // 보안성 검토. 정상적이지 않은 방법으로 접근시 차단 if(referer.length()==0) return; // 엉뚱한 곳에서 호출하면 리턴, 이건 해킹 시도라고 봐야지.. else if(referer.indexOf("aaa.jsp")>-1) ; // http://www..../aaa.jsp 명확한 경로를 기술 else if(referer.indexOf("bbb.jsp")>-1) ; // http://www..../bbb.jsp 명확한 경로를 기술 else if(referer.indexOf("ccc.jsp")>-1) ; // http://www..../cccjsp 명확한 경로를 기술 else{ System.out...
jsp 쿠키값 추출 import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest; public String getCookies(HttpServletRequest request){ String rv = ""; Cookie[] cookies = request.getCookies(); if(cookies==null) return ""; rv = "@Cookies{ "; // 구분하기 쉽도록 표시를 이렇게 한 것. 입맛에 맞춰 바꾸면 됨 for(int i=0,s=cookies.length; i0 ? ", " : "") +cookies[i].getName()+ " = " +cookies[i].getValue(); // getName() 으로 비교해서 특정..
MMS 본문 링크 타고 들어온 JSP 에서 프로세스를 중단하고자 할 때.. .jsp 가 호출되었을 때,더이상 진행하지 않게 하려면 아래와 같이 한다. 1. return; 그런데, return; 이후에도 코드들이 있으면 에러가 발생한다.이런 경우 아래와 같이 한다. 2. if(1==1) return;if(true) return; 이라고 하면 오류가 발생하므로,if(조건식) return; 이 되도록 하는 것이다. MMS 로 발생된 본문 링크를 타고 들어올 때,상기 2와 같이 하면 return; 이후의 문장도 실행이 된다.실행되면 안 되는데 실행이 되니까 미치고 환장할 노릇이지만 어쩔 수 없이 아래와 같이 한다. 3. if(조건) throw new Exception(); 물론 상기 3과 같이 하려면, 아래와 같이 세팅을 한다.try{ ... if(조건식) throw new Excep..
자바 JSP 에서 DB 에 엔터문자를 넣을 때 2바이트로 저장되는 것을 1바이트로 바꾸려면.. - 자바에서 개행(엔터) 문자는 1바이트로 인식- 자바스크립트에서 개행(엔터)문자는 1바이트로 인식- 오라클에서 개행(엔터) 문자는 1바이트로 인식 그런데..java 에서 오라클에 데이타를 넣을 때,1바이트인 개행(엔터) 문자를 DB 에 넣으면 2바이트가 된다고..그래서 고민하고 찾아보니,OS 에 따라 개행(엔터) 문자를 \n 이 아니라 \r\n 으로 인식하기도 한다는 것.여기서 \n 에 해당하는 오라클 함수는 chr(10), \r 은 chr(13).이제 어떻게 하면 될지 아셨죠..?replace('문자열',chr(13)||chr(10),chr(10)) 으로 해 주면 된다는 거죠.replace('문자열',chr(10)||chr(13),chr(10)) 은 2바이트가 1바이트로 변경되지 않아요.replace..
IP 와 DNS > 후이즈에서 사용하던 A 도메인에 대하여 아래 내용 가능1. 소유권을 ㄱ(ㄱ회사) 에서 ㄴ(ㄴ회사) 으로 이전2. 관리회사를 ㄱ(후이즈)에서 ㄴ(가비아)로 이전 > https://xn--3e0bx5euxnjje69i70af08bea817g.xn--3e0b707e/ 한국인터넷정보센터 KRNIC 국제 인터넷주소관리권한(IANA; Internet Assigned Numbers Authority) - 2016.10 이후.. 기존 ICANN 내 팀에서 수행하던 IANA 기능 운영 권한을 ‘ICANN 계열사(PTI)를 설립하여 이양 - IP 전세계 관리체계 : https://xn--3e0bx5euxnjje69i70af08bea817g.xn--3e0b707e/jsp/resources/ipv4Sys.jsp - 도메인..