'Tomcat'에 해당되는 글 2건

  1. 2016.12.05 Tomcat AccessLog에서 특정 요청을 제외 (AccessLogValve 설정)
  2. 2015.01.28 Tomcat 설치
2016.12.05 16:48


Tomcat AccessLog에서 특정 요청을 제외 (AccessLogValve 설정)

[참고] https://tomcat.apache.org/tomcat-7.0-doc/config/valve.html#Access_Log_Valve


0. 전제조건:

- 소스 수정 필요!!


1. conf/server.xml 열어서 아래 내용 추가

         <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

               conditionUnless="DoNotLog"

               prefix="localhost_access_log" suffix=".txt"

               pattern="%h %l %u %t &quot;%r&quot; %s %b" /> 


  

2. 로그를 남기기 원하지 않는 요청에 request.setAttribute("DoNotLog", "")를  추가한다.

@RequestMapping(value = "/weblist", method = RequestMethod.GET)

public ModelAndView testPageList(HttpServletRequest request)

{

request.setAttribute("DoNotLog", "");

ModelAndView mav = new ModelAndView();

// Call services

mav.addObject("list", testService.getEmpDetail());

mav.addObject("list2", testService.getEmpDetail());

// ... if you need more

mav.setViewName("testlist");

return mav;

}

 


3. 빌드 및 배포 후 서버 재시작


4. 이제 더 이상 해당 요청에서는 AccessLog 가 기록되지 않는다.




== 간단 요약 ==

1. Server.xml 의 Valve 설정에 conditionUnless 를 추가 및 설정한다.

   (로그 필요없는 조건 = "DoNotLog" 파라메터를 검사 시 null 이 아닌 놈들)


2. 소스에서 AccessLog 에 설정한 파라메터에 "" 을 set 하였으므로,

   이 요청에서 DoNotLog 파라메터는 null 이 아니게 되고, => 기록이 되지 않게 된다.

   ( 기록대상은 request.getAttribute("DoNotLog") = null )




Posted by 해비
2015.01.28 13:30

Tomcat 설치




다운로드

http://tomcat.apache.org/



­압축해제

# tar ­-zxf apache­-tomcat­-8.0.17.tar.gz ­-C /usr/share/tomcat8



­링크설정

# ln -­s /usr/share/tomcat8/apache-­tomcat­-8.0.17 /usr/share/tomcat

- 링크 설정을 하는 이유는 나중에 버젼업이 되어 새 버젼의 톰캣을 설치후 링크 를 변경하는 것으로 다른 파일들의 톰캣 경로를 그대로 사용하고자 함 입니다.


­톰캣계정 추가

# useradd tomcat



­소유권 변경, 실행권한 설정

# chown -­R tomcat:tomcat /usr/share/tomcat8
# chmod +x /usr/share/tomcat/bin/*.sh

- 톰캣 ­8.0.17버젼에서는 기본적으로 실행권한 설정이 되어 있었다.



톰캣 시작/종료

sudo /bin/su ­ - tomcat ­-c /usr/share/tomcat/bin/startup.sh
sudo /bin/su ­ - tomcat ­-c /usr/share/tomcat/bin/shutdown.sh



­시작/종료 스크립트 생성

# vi /etc/init.d/tomcat

#!/bin/sh
### BEGIN INIT INFO
# Provides: Tomcat
# Required­Start: $network
# Required­Stop: $network
# Default­Start: 2 3 5
# Description: Java Servlet and JSP Engine
### END INIT INFO

case "$1" in
'start')
/bin/su ­ - tomcat ­-c /usr/share/tomcat/bin/startup.sh
;;
'stop')
/bin/su ­ - tomcat ­-c /usr/share/tomcat/bin/shutdown.sh
;;
*)
echo "Usage: $0 { start | stop }"
;;
esac
exit 0



실행권한 부여

# chmod 755 /etc/init.d/tomcat



자동시작 등록

update­rc.d tomcat defaults

- 부팅 시 자동으로 톰캣 서버가 실행되도록 한다.



자동시작 제거

update­rc.d -­f tomcat remove



관리페이지 경로 변경

도메인 루트는 서비스에 사용하면서 동시에 톰캣 관리 페이지를 사용하고자 할때, 관리페이지 접근경로를 변경 한다.


/usr/share/tomcat/webapps/ROOT

톰캣 루트 경로 이다.


관리 페이지에 접근시 사용할 경로(이하 여기서는 /tcman) 으로 한다.

/usr/share/tomcat/webapps/ROOT/tcman 폴더 생성


/usr/share/tomcat/webapps/ROOT/ 폴더에서 WEB­INF 폴더를 제외한 모든 파일을 tcman 으로 이동


톰캣 재기동

/etc/init.d/tomcat stop

/etc/init.d/tomcat start


이제 /tcman 을 붙여야지 관리페이지로의 접근이 가능하다.

물론 / 로 접근 시 404 오류를 내뱉을 것이다. 파일 없다고...


오류 보기가 싫으면 index.html 하나 만들어서 임시로 넣어두는 것도 좋은 방법~

- 관리페이지 경로 변경은 제가 생각한 방법인데, 더 좋은 방법이 있을지는 모르겠네요...





- 참고 -

http://wolfpaulus.com/jounal/software/tomcat_squeeze/comment­page­1/#comment­60189
http://fruitdev.tistory.com/19
https://www.debian­administration.org/article/28/Making_scripts_run_at_boot_time_with_Debian






Posted by 해비