Web Server는 처음 시작될 때 일부 초기화 작업을 수행한 다음 클라이언트(예: 브라우저)의 HTTP 요청을 기다립니다. 서버는 요청을 받으면 먼저 가상 서버를 선택합니다. 선택한 가상 서버 의 obj.conf 파일은 서버가 요청을 처리하는 방법을 결정한다.
obj.conf 파일에는 요청 처리 프로세스의 각 단계에서 수행할 작업을 서버에 알려주는 지시문이라고 하는 일련의 지침이 포함되어 있습니다 . 이러한 지시문은 Object 태그 내에서 그룹화됩니다. 각 지시문은 하나 이상의 인수가 있는 함수를 호출한다.
각 지시문은 요청 처리 프로세스의 특정 단계에 적용됩니다. 예를 들어 요청 처리 프로세스의 권한 부여 단계에서 적용되는 지시문은 AuthTrans 지시문이다.
요청 처리 프로세스는 다음과 같은 단계로 진행된다.
1 | AuthTrans | 요청에서 전송된 인증 정보 확인 (ex> name, password,...) |
2 | NameTrans | Logical URL을 로컬 파일 시스템 경로로 변환 |
3 | PathCheck | 로컬 파일 시스템 경로의 유효성 확인 및 요청자에게 파일 시스템의 요청된 리소스에 대한 엑세스 권한 있는지 확인 |
4 | ObjectType | 요청된 리소스(ex> text/html, image/gif,...) 의 MIME 유형을 결정하고 기타 리소스 별 설정 지정 |
5 | Input | 서비스 단계에서 읽은 수신 요청 데이터를 처리할 필터 선택 |
6 | Output | 서비스 단계에서 생성된 발신 응답 데이터를 처리할 필터 선택 |
7 | Route | 요청을 처리할 서버 선택 |
8 | Service | 응답을 생성하고 클라이언트에 반환 |
9 | AddLog | 로그 파일에 항목 추가 |
10 | Error | 클라이언트에 오류 메시지 전송 후 처리 종료 (단 이는 이전 단계에서 오류 발생 시 실행됨) |
(https://docs.oracle.com/cd/E19146-01/821-1827/abvax/index.html)
=================================================================================
## 각 지시문에 내장된 함수의 종류는 포함된 링크에서 확인 가능
=> https://docs.oracle.com/cd/E19146-01/821-1827/abuik/index.html
=================================================================================
만일 default obj.conf 파일 외에 추가할 내용이 있는 경우, 해당 순서에 맞추되 다른 그룹이 있는 경우 그 가장 위에 추가해야 한다.
ex> default obj.conf
PathCheck fn="uri-clean" PathCheck fn="check-acl" acl="default" PathCheck fn="find-pathinfo" PathCheck fn="find-index-j2ee" |
만약 여기에 PathCehck fn="abcde" 를 추가하고 싶다면 가장 위에 추가.
PathCehck fn="abcde" PathCheck fn="uri-clean" PathCheck fn="check-acl" acl="default" PathCheck fn="find-pathinfo" PathCheck fn="find-index-j2ee" |
=================================================================================
## obj.conf의 지시문
각 지시문은 함수를 호출하여 호출 시점을 표시하고 이에 대한 매개변수를 지정한다.
지시문의 구문은 다음과 같다.
Directive fn="function" name1="value1" name2="value2" ... nameN="valueN"
ex> NameTrans fn="pfx2dir" from="/mc-icons" dir="/product/web/iplanet/lib/icons" name="es-internal"
표현식 및 변수는 미리 정의된 변수를 사용하는 것이며, 자세한 내용은 다음 링크 참조
>> https://docs.oracle.com/cd/E19146-01/821-1827/gdaer/index.html
Appendix A Using Variables, Expressions, and String Interpolation (Oracle iPlanet Web Server 7.0.9 Administrator's Configuratio
$n Regular expression backreference (value of the nth capturing subpattern, n = 1...9), for example, $1. Regular expression backreferences are only available within the body of If and ElseIf containers, and only if the container expressions includes one or
docs.oracle.com
=================================================================================
## obj.conf의 Objects
obj.conf 파일의 지시문은 <Object> 로 그룹화된다.
<Object>는 각각 name이나 ppath를 포함시킬수 있으며 예시로는 다음과 같다.
<Object name="cgi">
<Object ppath="/opt/oracle/webserver7/https-server/docs/private/*">
기본적으로 서버는 항상 default Object에 있는 프로세스를 읽는 것으로 시작한다. 하지만 다음과 같은 조건들 중 하나가 true 이라면 서버는 다른 Object의 처리 지시문으로 전환한다.
1. NameTrans가 다른 Object에 적용된 name 값과 일치할 때
2. NameTrans가다른 Object에 적용된 ppath 값과 일치하는 부분 경로를 생성할 때
'Oracle > Web Tier' 카테고리의 다른 글
Iplanet Cipher suites (0) | 2023.02.21 |
---|---|
IPlanet instance obj.conf 파일 생성 안됨 현상 (0) | 2022.10.26 |
OHS, Iplanet PID 파일 (0) | 2022.10.14 |
특정 url에 대해서 iplanet이 처리하는 구성 (0) | 2022.10.13 |
OHS ~ Apache 버전 정리 (0) | 2022.10.05 |