[weblogic] weblogic.xml Parameter

2019. 7. 26. 15:57 Server, WAS/Weblogic

[weblogic] weblogic.xml Parameter




weblogic Server 11g Realease (10.3.5)


weblogic.xml Parameter


출처 : 오라클 웹로직 파라미터



 Namespace

<weblogic-web-app xmlns="http://xmlns.oracle.com/weblogic/weblogic-web-app"> 

 Descriptor

Parameter 

Remarks 

 <session-descriptor>

 <timeout-secs>

 세션 타임아웃 시간, 기본단위 초(secs) web.xml의 session-timeout(분)이 설정되어 있다면, web.xml 설정값이 우선함

<invalidation-interval-secs>

 Bound된 Session을 Invalid 시킨다.

 <sharing-enabled>

 웹어플리케이션에서 세션을 공유할 때, 설정

<debug-enabled>

 HTTP sessions의 Debug 사용

 <id-length>

 세션 ID 길이를 설정하는 값

 <tracking-enabled>

 HTTP requests의 session tracking 활성화

 <cache-size>

 JDBC와 file-persistent sessions의 cache size 설정

 <max-in-memory-sessions>

 허용 Sesssion 최대 수 설정

 <cookies-enabled>

 Session cookies 사용 설정

 <cookie-name>

 Session tracking cookie 이름

 <cookie-path>

 Session tracking cookie path 설정

 <cookie-domain>

 cookie에 domain 설정, 설정된 Domain만 사용가능하다.

 <cookie-comment>

 cookie에 주석 설정

 <cookie-secure>

 HTTPS를 사용하여 cookie 전송여부

 <cookie-max-age-secs>

 cookie 최대 유지 시간

<persistent-store-type>

 memory : session storage 지속 사용 해제

replicated : memory와 같음, session data는 클러스터 서버에 복제

replicated_if_clustered : 웹 어플리케이션을 deploy할때, session storage이 클러스터 서버에 복제한다

async-replicated : 비동기 세션 복제

async-replicated-if-clustered : 활성화된 비동기 세션을 클러스터 환경의 웹어플리케이션에 복제한다. 단일 서버에 deploy시 세션 지속성/복제는 memory로 기본설정 된다.

file : 파일 기본 지속성 사용

async-jdbc : 어플리케이션에서 HTTP 세션에 대한 비동기 JDBC 지속성을 사용

jdbc : 영구적인 세션을 저장하는 데이터베이스를 사용

cookie : 모든 세션 데이터는 사용자의 브라우저에 있는 쿠키에 저장.

 <persistent-store-cookie-name>

 cookie 기반 지속성에 사용되는 쿠키의 이름을 설정

 <persistent-store-dir>

 파일기반 지속성에 사용되는 저장 디렉토리 지정

 <persistent-store-pool>

 지속성을 유지할 저장 JDBC Pool의 이름을 지정

 <persistent-store-table>

 JDBC 기반 영구 세션 저장시 사용할 DB 테이블 지정. (persistent-store-type 이 JDBC일 경우만 사용)

 <jdbc-column-name-max-inactive-interval>

 wl_max-inactive-interval 칼럼의 alternative 제공

 <jdbc-connection-timeout-secs>

 * 사용 중지 항목

 <url-rewriting-enabled>

 Cookie가 브라우저에서 비활성화 될 경우 Session ID로 tracking하여 URL 사용

 <http-proxy-caching-of-cookies>

 FALSE로 설정시, 쿠키를 캐시하지 않는다.

 <encode-session-id-in-query-params>

 최신 서블릿은 컨테이너에 session ID 인코딩이 필요. 특정 웹 서버 파라미터 경로가 잘 작동하지 않을때, TRUE 설정

 <runtime-main-attribute>

 ServletSessionRuntimeMBean에 사용 getMainAttribute()는 이 문자열을 key로 세션 속성값을 반환한다.

 <cookie-http-only>

 모든 세션 쿠키는 브라우저 스크립트를 사용한다.

 <jsp-descriptor>

 <page-check-seconds>

 JSP 파일 변경 여부 확인하고 재 컴파일되는 초 간격을 설정

 <precompile>

 TRUE로 설정시 응용 프로그램을 배포하거나 재 배치할 때 자동으로 수정된 JSP 파일을 컴파일한다.

 <precompile-continue>

 TRUE로 설정시 JSP 파일의 일부가 컴파일시 실패해도, 모든 수정된 JSP 파일을 컴파일 한다.

 <keepgenerated>

 TRUE로 설정시 JSP 파일 컴파일시에 생성된 자바 파일을 저장

 <verbose>

 TRUE로 설정시 디버깅 정보는 브라우저 명령 프롬프트와 웹로직 서버 로그 파일에 출력한다.

 <working-dir>

 JSP 컴파일시 생성된 class 파일을 저장하는 디렉토리 설정

 <print-nulls>

 FALSE로 설정시, "null" 파라미터 값은 " " 로 표현

 <backward-compatible>

 TRUE로 설정시, 이전 버전과 호환된다.

 <encoding>

 JSP 페이지에서 사용되는 encoding 문자열 사용, default는 jsp encoding

 <package-prefix>

 모든 JSP 페이지가 컴파일되는 prefix 지정

 <exact-mapping>

 TRUE로 설정시, 첫번째 요청으로 새로 만들어지는 JSP 파일은 정확히 요청에 매핑됨. FALUSE로 설정시 웹 응용 프로그램 컨테이너가 JSP가 아닌 정확한 URL 매핑을 생성한다.

 <default-file-name> 웹로직 서버가 JSP에 대해 생성된 JAVA와 Class 파일을 저장하는 기본 파일이름.
 <rtexprvalue-jsp-param-name> TRUE로 설정시, jsp:param 태그의 속성은 런타임 속성 값의 이름을 따른다.
 <optimize-java-expression> TRUE로 설정시, JSP 컴파일러는 런타임 성능을 향상시키기 위해 JAVA 표현을 최적화 합니다.
 <compress-html-template> TRUE로 설정시, 런타임 성능을 개선할 수 있는 JSP의 HTML을 압축합니다. &lt;pre&gt; 기능 사용 불가
 <container-descriptor> <check-auth-on-forward> Servlet 또는 JSP의 전달 요청에 인증이 필요할 때 태그를 사용. * Oracle에서 해당 설정은 하지 않는 것을 권고
 <redirect-with-absolute-url> TRUE로 설정시, 절대적 URL을 사용하여 redirect
 <index-directory-enabled> 디렉토리 리스팅 활성, 비활성화
 <index-directory-sort-by> weblogic.servlet.FileServlet에 의해 생성된 디렉토리 목록이 정렬되는 순서. NAME, LAST_MODIFIED, SIZE
 <servlet-reload-check-secs> Servlet이 수정되었는지 확인하고 수정되었으면, 적용 단위 시간, 관리 콘솔에 지정된 값이 우선한다.
-1 : Servlet 확인 않함, 0 : 항상 Servlet을 확인, 1: 1초에 한번씩 Servlet 확인
 <resource-reload-check-secs>

 resource가 수정될 경우, 리로드 단위 시간, 단 <page-check-seconds>가 설정되어 있으면, <page-check-seconds>를 따른다. 관리 콘솔에 지정된 값이 우선한다.

-1 : reload 하지 않음, 0: 항상 reload, 1 : 1초에 한번씩 reload

 <single-threaded-servlet-pool-size> SingleThreadMode 인스턴스 풀의 크기를 지정한다. * 현 버전에서 사용되지 않음
 <session-monitoring-enabled> TRUE로 설정시 런타임 Mbeans는 세션을 만든다. 단, 관리 콘솔 지정된 값이 우선한다.
 <save-sessions-enabled> TRUE로 설정시, redeploy 나 undeploy시에도 session data 저장. FALSE로 설정시, 사라짐.
 <prefer-web-inf-classes> TRUE로 설정시, application 실행시 weblogic이 내장하고 있는 라이브러리보다, 배포폴더(WEB-INF\lib)의 라이브러리를 먼저 적용
 <default-mime-type> MIME 매핑값을 설정
 <client-cert-proxy-enabled> TRUE로 설정시, 각 웹로직 서버 인스턴스는 프록시 서버 플러그인이 실행되는 컴퓨터의 연결을 허용한다.  connection filter를 지정하지 않고 사용시, 잠재적 보안 취약점이 생길 수 있다.
 <relogin-enabled> 사용자가 이미 로그인되어 있거나, 권한이 없을때 리소스에 액세스 시도시, FORBIDDEN(403) 에러 발생
 <allow-all-roles> 웹 응용 프로그램에서 * (모든 범위) 사용 허용, 기본적으로 web.xml 설정이 우선한다.
 <native-io-enabled> TRUE로 설정시, 정적 파일을 default servlet에 등록하여 제공한다. Windows에 적용된다.
 <minimum-native-file-size> native-io-enabled가 true일때 사용, native I/O를 사용하기 위한 최소 파일 크기를 설정(byte)
 <disable-implict-servlet-mappings> TRUE로 설정시, 웹어플리케이션 컨테이너는 내부 servlet(*.jsp, *.class) 매핑을 생성하지 않습니다. 기본 servlet mapping 사용
 <temp-dir> 임시 디렉토리 위치 지정
 <optimistic-serialization> TRUE로 설정시, getAttribute(name)이 servlet을 통해 전송될때, serialize-deserialize 하지 않는다. Weblogic.xml에 해당 값을 설정시, domain의 설정값은 무시된다.
 <show-archived-real-path-enabled> TRUE로 설정시, getRealpath()는 resource 파일의 표준 경로를 반환한다. FALSE로 설정시 웹응용프로그램에서 파일의 실제 경로를 반환한다.
 <require-admin-traffic> TRUE로 설정시 traffic이 관리자 채널을 통해 이동하는 것을 허용.
 <access-logging-disabled> TRUE로 설정시 logging overhead를 줄여 서버 처리량을 향상시킨다. FALSE로 설정시 응용 프로그램 액세스가 기록됨.
 <prefer-forward-query-string>

 TRUE로 설정시 웹로직 서버는 오직 전달된 query string만 반환한다.

 <charset-params>

 <input-charset>

 URL에 <resource-path> 경로가 포함되어 있을경우, <java-charset-name> 의 문자열로 지정
 <charset-mapping> <iana-charset-name>에 지정된 IANA 문자열을 <java-charset-name>요소로 문자열 지정
 <virtual-directory-mapping> <local-path> 디스크의 물리적 위치를 지정
  <url-pattern> 매핑될 URL 패턴 설정
 <url-match-map>  Default 값은 J2EE 표준을 기반으로 하고 있다. 웹로직 서버에 포함된 다른 구현 SimpleApacheURLMatchMap을 사용할 수 있다.
 <security-permission>  보안 정책 파일 구문을 기반으로 한 보안 권한을 지정.
 <context-root>  context root 설정
 <wl-dispatch-policy>  WORK MANAGER 이름을 식별하여 웹 어플리케이션의 WORK MANAGER로 할당한다. 이 요소를 설정하면, 웹 어플리케이션 레벨 파라미터는 무시될 수 있다.
 <servlet-descriptor> <servlet-name> 배치된 web.xml의 서블릿 요소에 정의된 서블릿 이름을 지정.
 <run-as-principal-name> web.xml에 run-as-role-name로 정의된 이름 대신 주요 이름으로 지정
 <init-as-principal-name> run-as-principal-name 의 초기화 이름을 지정한다.
 <destroy-as-principal-name> servlet의 run-as-principal-name을 제거하는 메소드로 사용한다.
 <dispatch-policy> *사용하지 않는 옵션, wl-dispathc-policy가 정의되어진 값을 사용.
 <work-manager> <name> WORK MANAGER 이름
 <response-time-requsest-class>
<fair-share-requset-class>
<context-request-class>
<request-class-name>
 <response-time-request-class> 응답시간에 대한 목표 값을 정의. 목표값을 넘은 thread에 관하여요청에 대한 평균 대기 시간을 계산하고, 스케쥴링 요청
<fair-share-request-class> 요청을 처리하는데 필요한 평균 thread 시간을 지정 default는 50
<context-request-class> 현재 유저나 현재 유저 그룹과 같은 context 정보를 기반으로 들어온 요청에 request-class-name 을 지정
<request-class-name> request-class-name 을 정의한다.
 <min-threads-constraint>
<min-threads-constraint-name>
 교착상태를 방지하기 위해 할당한 값만큼 최소한의 threads 수를 설정한다.
 <max-threads-constraint>
<max-threads-constraint-name>
 현재 실행되고 있는 requests의 스레드의 최대값을 제한할 수 있다.
 <capacity>
<capacity-name>
 서버는 request가 capacity에 도달하였을때, HTTP 503 에러와 함께 request를 거절합니다.
 <logging> <log-filename> 로그 파일 이름을 지정. 파일 이름의 전체 주소 필요
 <logging-enabled> TRUE로 설정시 생성된 로그를 지정된 파일에 씁니다.
 <rotation-type> 파일 순환 타입을 설정
bySize : 로그 파일이 지정한 file-size-limit에 도달하면 서버는 파일이름을 변경 한다.
byTime: 각 시간 간격으로 지정한 file-time-span 값에 따라 파일 이름을 변경한다.
None : 단일 파일에 축적됩니다. 크기가 커지면 내용을 삭제해줘야 합니다.
 <number-of-files-limited> TRUE로 설정시, 로그 파일 생성 수를 제한한다.(rotation-type이 bySize로 되어있을때), 제한 숫자가 넘어가면 가장 오래된 파일에 로그를 기록한다.)
 <file-count> 해당 지정 숫자만큼 로그 파일 생성 수를 제한한다. (number-of-files-limited가 TRUE로 되어 있어야 한다.)
 <file-size-limit> 파일당 로그를 기록하는 제한 용량입니다. (rotation-type 이 bySize로 지정되어 있을때)
 <rotate-log-on-startup> 서버의 시작주기 단위로 로그 파일 순환 여부를 지정한다.
 <log-file-rotation-dir> 순환 로그 파일이 저장될 디렉토리 경로를 지정
 <rotation-time> 로그 파일의 시간 기반 순환 기록 시작 시간 지정 hh:mm 형식 (rotation-type 이 byTime 으로 되어있을때)
 <file-time-span> 로그 파일을 다른 파일에 순환 기록 시간 간격 지정 (rotation-type이 byTime 으로 되어있을때)
 <library-ref> <library-name> 라이브러리 모듈 참조를 위해 라이브러리 이름 지정
 <specification-version> 라이브러리 모듈 참조 사양 버전 지정
 <implementation-version> 라이브러리 모듈 참조 구현 버전 지정
 <exact-match> 위의 사양이 완전히 일치하는지 여부를 지정합니다.
 <fast-swap> <enabled> TRUE로 설정시 어플리케이션 deploy시 FASTSWAP을 활성화 한다.
 <refresh-interval> 해당 지정 초마다 응용프로그램 class의 변경사항을 확인 및 초기화.
 <redefinition-task-limit> 중복 정의시 비동기적으로 수행. 재정의 작업의 수를 지정. 작업의 수가 지정 값을 초과하는 경우, 이전 작업이 자동으로 제거



weblogic.xml


<?xml version="1.0" encoding="UTF-8"?>

<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

    <session-descriptor>

    <cookie-name>JSESSIONID</cookie-name>           <!--  Cookie Name   -->

         <persistent-store-type>replicated_if_clustered</persistent-store-type> 

             <!--  Cluster 구성시 쿠키 유지   -->

<timeout-secs>3600</timeout-secs> <!--  timeout 1시간   -->

    </session-descriptor>

    <jsp-descriptor>

<precompile>true</precompile>                      <!--  jsp 파일 자동 컴파일   -->

<page-check-seconds>0</page-check-seconds>  <!-- 컴파일 주기 0초   -->

     </jsp-descriptor>

     <context-root>/</context-root>        <!-- 컨텍스트 루트  /   -->

</weblogic-web-app>



출처: https://hyeonstorage.tistory.com/27?category=549784 [개발이 하고 싶어요]