본문 바로가기

Server Oriented

(184)
크롬에서 로그인시 세션 만료 에러 (iframe 때문?) 크롬의 행보와 매번 부딪히게 되네요.. 크롬이 http 를 지양하고, https 를 지향한다는 것은 이미 알려진 사실이구요. 최근에 크롬이 CSRF 를 이유로 iframe 을 사용할 때 세션을 끊어먹는(실제로는 쿠키값을 복사하지 않는) 만행(?)을 저지르고 있습니다. 그냥 웹사이트를 https 로만 돌게 하지 왜, 크롬의 만행이라고 하느냐 하면요.. 동일 도메인임에도 쿠키값을 복사하지 않아서 그렇습니다. ^^; 나는 전혀 문제 없는데, 왜 문제를 삼느냐구요..? 사실인즉 이렇습니다. 예전에는 모든 웹사이트가 http 로 설계되었습니다. 그러다가 보안이 강조되다 보니 (우리나라에선 KISA 의 영향이 크죠), 로그인 부분에 https 를 사용하게 되었구요. 그런데, http 화면에서 https 를 사용하다..
Toad 토드, Function/Job/Procedure/Trigger 추출 오라클 DB 에서 각종 Function/Job/Procedure/Trigger 등을 추출하여 백업해 두면, 두고두고 요긴합니다. 주기적으로 백업해 두시길.. Database, Export, Export DDL 메뉴 차례로 선택. Export DDL 화면에서, Output 은 Single file, File 체크 하고, Add 버튼 클릭. (하나의 파일에서 찾는 것이 편리합니다. 물론, 여려 파일로 만들고 여러파일에서 찾기를 해도 되겠지만..) Add 버튼을 누르면 Object Search 팝업창이 열립니다. - Search term, 필요시 세팅 - Object status, 살아 있는 것도 하려면 Valid(기본 설정), 모두 하려면 Both - Schemas to search, 체크하려는 스키마 모두..
Tomcat 열린 파일이 너무 많음, tomcat-users.xml 닫지 못... 서비스가 안 되는데 아래와 같은 메시지가 나왔다면.. Tomcat 이 설치된 /conf/server.xml 에서 부분을 주석처리 하고, 처럼 주석처리 하고 Tomcat 만 재기동 해 보세요. 다만, tomcat 컨테이너가 stop 하지 않는다면, 상기 주석을 푼 상태에서 stop 하고.. 다시, 상기 주석을 세팅한 다음 start 하시구요. 심각 [ajp-nio-8009-Acceptor-0] org.apache.tomcat.util.net.NioEndpoint$Acceptor.run 소켓 accept 실패 java.io.IOException: 열린 파일이 너무 많음 at sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method) at sun.nio.ch.Ser..
IOException: 열린 파일이 너무 많음 홈페이지가 갑자기 열리지 않는다고.. 시스템 로그 확인해 보니 'IOException: 열린 파일이 너무 많음' 일단, Tomcat 컨테이너를 내렸다 올리고 열심히 검색해 보니 아래 내용을 발견. https://sarc.io/index.php/os/1708-too-many-open-files https://woowabros.github.io/experience/2018/04/17/linux-maxuserprocess-openfiles.html /etc/security/limits.conf 파일은 root 사용자로 수정하고, os 를 reboot 할 필요 없이 파일을 저장하면 바로 반영됨. 다만, Tomcat 은 재기동 해야 합니다. ^^; 한 가지 주의해야 할 것은, limits.conf 를 root 계..
Apache Tomcat log 설정 - Apache mod_jk.log 일자별 분리 (httpd.conf 수정) rotatelogs 를 사용하여 pipe 세팅 https://vivi-world.tistory.com/89 - Tomcat catalina.out 일자별 분리 (catalina.sh 수정) rotatelogs 를 사용하여 pipe 세팅 https://gangnam-americano.tistory.com/42 - b-shell 에 alias 설정 alias tlog='tail -f /usr/local/tomcat/logs/catalina.out.`date +%Y-%m-%d`' .bash_profile 에 상기 alias 추가 - Tomcat 로그레벨 조정 (logging.properties 수정) FINE 보다는 INFO 가 쌓이..
svn 서버의 IP 가 변경되면 작업해야 하는 2가지 하나는 svn 서버의 URL 을 switch 하는 것. (여기서는 svn 1.7.4 기준 설명) 다른 하나는, 이클립스의 location ip 를 변경하는 것. - https://blog.naver.com/zend4u/220897005905 #1 .svn 가 보이는 경로로 이동합니다 이거 모르면 한 참 찾아야 합니다. ^^ (ls -la 실행했을 때 .svn 디렉토리명이 보이는 장소입니다) #2 svn info | grep ^URL 상기 문자열 그대로 입력하고 실행합니다. 그러면 기존에 세팅된 URL 이 IP 와 함께 표시됩니다. #3 svn switch --relocate #2 에서 표시된 URL 에서 IP 만 변경해서 '변경후 URL' 로 사용합니다. 리소스 양에 따라 소요되는 시간이 다릅니다. #4..
경품 추첨 DB 로직 경품 갯수가 n 개일 때, 경품 전체 데이타를 미리 만들어 놓고, update 하는 방식으로 세팅할 수도 있지만.. 여기에서는, 경품을 관리하는 경품테이블을 두고.. 추첨이 일어날 때마다 이벤트테이블에 insert 하는 방식. insert 하는 방식 보다는 update 할 때 동시성 문제가 발생할 수 있으므로, 데이타도 적게 적재되는 insert 방식으로 구현하는게 좋음. insert into 이벤트테이블( 이벤트시퀀스 ,이벤트카테고리 ,사용자아이디 ,경품코드 ) select 이벤트시퀀스.nextval ,a.* from (select 이벤트카테고리 ,사용자아이디 ,(case when today = 1 -- 좋은 경품은 1인 1건만 당첨, 한 번만 당첨 or c.cnt_mid >= 2 -- 중간 경품은 1..
HTTP Debugger 사용팁 Trial 버전이기는 해도, 직관적이고 가벼운 툴로서 괞찮음. - Application 에서 모니터링할 웹브라우저들을 선택 가능. - Domain 에서 모니터링할 도메인들을 선택 가능. - Type 에서 불필요한 리소스들을 제외 가능. - 검색결과에서 필요한 항목을 문자열로 검색 가능. - Request Details 에서 FORM Data 로 파라미터, Response Details 에서 상세 내용 조회 가능