<!DOCTYPE html SYSTEM "about:legacy-compat">
<html lang="ko"><head><META http-equiv="Content-Type" content="text/html; charset=EUC-KR">
<meta content="width=device-width, initial-scale=1" name="viewport">
<!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>mod_log_config - Apache HTTP Server Version 2.4</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet">
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size">
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css"><link rel="stylesheet" type="text/css" href="../style/css/prettify.css">
<script src="../style/scripts/prettify.min.js">
</script>

<link href="../images/favicon.png" rel="shortcut icon"></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">모듈</a> | <a href="../mod/quickreference.html">지시어들</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">용어</a> | <a href="../sitemap.html">사이트맵</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Report a bug</a></p>
<p class="apache">Apache HTTP Server Version 2.4</p>
<img alt="" src="../images/feather.png"></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif"></a></div>
<div id="path">
<a href="https://www.apache.org/">Apache</a> &gt; <a href="https://httpd.apache.org/">HTTP Server</a> &gt; <a href="https://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.4</a> &gt; <a href="./">모듈</a></div>
<div id="page-content">
<div id="preamble"><h1>아파치 모듈 mod_log_config</h1>
<button aria-label="Toggle language list" class="lang-toggle"><svg xmlns="http://www.w3.org/2000/svg" stroke-width="2" stroke="currentColor" fill="none" viewBox="0 0 24 24" height="16" width="16"><circle r="10" cy="12" cx="12"/><line y2="12" x2="22" y1="12" x1="2"/><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"/></svg></button>
<div class="toplang">
<p><span>가능한 언어: </span><a href="../en/mod/mod_log_config.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_log_config.html" hreflang="fr" rel="alternate" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a> |
<a href="../ja/mod/mod_log_config.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="../ko/mod/mod_log_config.html" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/mod/mod_log_config.html" hreflang="tr" rel="alternate" title="T&uuml;rk&ccedil;e">&nbsp;tr&nbsp;</a></p>
</div>
<div class="outofdate">이 문서는 최신판 번역이 아닙니다.
            최근에 변경된 내용은 영어 문서를 참고하세요.</div>
<table class="module"><tr><th><a href="module-dict.html#Description">설명:</a></th><td>서버로의 요청을 로그에 기록한다</td></tr>
<tr><th><a href="module-dict.html#Status">상태:</a></th><td>Base</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">모듈명:</a></th><td>log_config_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">소스파일:</a></th><td>mod_log_config.c</td></tr></table>
<h3>요약</h3>

    <p>이 모듈은 클라이언트의 요청을 로그에 자유롭게 기록한다.
    자신이 원하는 형식으로 로그를 기록할 수 있고, 파일이나 외부
    프로그램에 직접 로그를 보낼 수도 있다. 조건적 로그를 사용하면
    요청의 성격에 따라 요청을 로그에 추가하거나 제외할 수 있다.</p>

    <p>이 모듈은 세가지 지시어를 제공한다. <code class="directive"><a href="#transferlog">TransferLog</a></code>는 로그파일을
    만들고, <code class="directive"><a href="#logformat">LogFormat</a></code>은
    원하는 형식을 정하고, <code class="directive"><a href="#customlog">CustomLog</a></code>는 한번에 로그파일과
    형식을 모두 지정한다. <code class="directive">TransferLog</code>와
    <code class="directive">CustomLog</code> 지시어를 여러번 사용하면
    요청을 여러 파일에 기록할 수 있다.</p>
</div>
<div id="quickview"><h3>주제</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif"> <a href="#formats">로그 형식 지정하기</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#security">보안상 고려할 점</a></li>
</ul><h3 class="directives">지시어들</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif"> <a href="#bufferedlogs">BufferedLogs</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#customlog">CustomLog</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#globallog">GlobalLog</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#logformat">LogFormat</a></li>
<li><img alt="" src="../images/down.gif"> <a href="#transferlog">TransferLog</a></li>
</ul>
<h3>Bugfix checklist</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">httpd changelog</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&amp;list_id=144532&amp;product=Apache%20httpd-2&amp;query_format=specific&amp;order=changeddate%20DESC%2Cpriority%2Cbug_severity&amp;component=mod_log_config">Known issues</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&amp;component=mod_log_config">Report a bug</a></li></ul><h3>참고</h3>
<ul class="seealso">
<li><a href="../logs.html">아파치 로그파일</a></li>
</ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="formats">로그 형식 지정하기 <a title="Permanent link" href="#formats" class="permalink">&para;</a></h2>

    <p><code class="directive"><a href="#logformat">LogFormat</a></code>과
    <code class="directive"><a href="#customlog">CustomLog</a></code>
    지시어의 형식 아규먼트는 문자열이다. 이 문자열에 따라 요청을
    로그파일에 기록한다. 문자열에는 로그파일에 그대로 복사되는
    문자와 행바꿈과 탭을 나타내는 C의 "\n"과 "\t" 제어문자를
    사용할 수 있다. 로그파일에 따옴표나 백슬래쉬를 쓰려면 앞에
    반드시 백슬래쉬를 적어줘야 한다.</p>

    <p>요청의 특징은 형식 문자열에 "<code>%</code>" 지시어를
    사용하여 기록한다. 이 지시어는 로그파일에서 다음과 같이
    변경된다.</p>

    <table class="bordered"><tr class="header"><th>형식&nbsp;문자열</th>
        <th>설명</th></tr>
<tr><td><code>%%</code></td>
        <td>퍼센트 기호</td></tr>
<tr class="odd"><td><code>%...a</code></td>
        <td>원격 IP-주소</td></tr>
<tr><td><code>%...A</code></td>
        <td>(서버) IP-주소</td></tr>
<tr class="odd"><td><code>%...B</code></td>
        <td>HTTP 헤더를 제외한 전송 바이트수.</td></tr>
<tr><td><code>%...b</code></td>
        <td>HTTP 헤더를 제외한 전송 바이트수. CLF 형식과 같이
        전송한 내용이 없는 경우 0 대신 '<code>-</code>'가 나온다.</td></tr>
<tr class="odd"><td><code>%...{<var>Foobar</var>}C</code></td>
        <td>서버가 수신한 요청에서 <var>Foobar</var> 쿠키의
        내용.</td></tr>
<tr><td><code>%...D</code></td>
        <td>요청을 처리하는데 걸린 시간 (마이크로초 단위).</td></tr>
<tr class="odd"><td><code>%...{<var>FOOBAR</var>}e</code></td>
        <td>환경변수 <var>FOOBAR</var>의 내용</td></tr>
<tr><td><code>%...f</code></td>
        <td>파일명</td></tr>
<tr class="odd"><td><code>%...h</code></td>
        <td>원격 호스트</td></tr>
<tr><td><code>%...H</code></td>
        <td>요청 프로토콜</td></tr>
<tr class="odd"><td><code>%...{<var>Foobar</var>}i</code></td>
        <td>서버가 수신한 요청에서 <code><var>Foobar</var>:</code>
        헤더의 내용.</td></tr>
<tr><td><code>%...l</code></td>
        <td>(있다면 identd가 제공한) 원격 로그인명.
        <code class="module"><a href="../mod/mod_ident.html">mod_ident</a></code>가 있고 <code class="directive"><a href="../mod/mod_ident.html#identitycheck">IdentityCheck</a></code>가
        <code>On</code>이 아니면 빼기기호를 기록한다.</td></tr>
<tr class="odd"><td><code>%...m</code></td>
        <td>요청 메써드</td></tr>
<tr><td><code>%...{<var>Foobar</var>}n</code></td>
        <td>다른 모듈이 기록한 <var>Foobar</var> 노트(note)
        내용.</td></tr>
<tr class="odd"><td><code>%...{<var>Foobar</var>}o</code></td>
        <td>응답의 <code><var>Foobar</var>:</code> 헤더 내용.</td></tr>
<tr><td><code>%...p</code></td>
        <td>요청을 서비스하는 서버의 정규 포트</td></tr>
<tr class="odd"><td><code>%...P</code></td>
        <td>요청을 서비스하는 자식의 프로세스 ID.</td></tr>
<tr><td><code>%...{<var>format</var>}P</code></td>
        <td>요청을 서비스하는 자식의 프로세스 ID 혹은 쓰레드
        ID. format에는 <code>pid</code>와 <code>tid</code>가
        가능하다.
        </td></tr>
<tr class="odd"><td><code>%...q</code></td>
        <td>질의문자열 (질의문자열이 있다면 앞에 <code>?</code>를
        붙이고, 없다면 빈 문자열)</td></tr>
<tr><td><code>%...r</code></td>
        <td>요청의 첫번째 줄</td></tr>
<tr class="odd"><td><code>%...s</code></td>
        <td>상태(status). 내부 리다이렉션된 요청의 경우 *원래*
        요청의 상태이다. 최종 요청의 상태는 <code>%...&gt;s</code>.</td></tr>
<tr><td><code>%...t</code></td>
        <td>common log format 시간 형식(표준 영어 형식)의 시간</td></tr>
<tr class="odd"><td><code>%...{<var>format</var>}t</code></td>
        <td><code>strftime(3)</code> 형식 format의 시간. (지역시간일
        수 있음)</td></tr>
<tr><td><code>%...T</code></td>
        <td>요청을 처리하는데 걸린 시간 (초 단위).</td></tr>
<tr class="odd"><td><code>%...u</code></td>
        <td>원격 사용자 (auth가 제공하며, 상태(<code>%s</code>)가
        401인 경우 이상한 값을 나올 수 있음)</td></tr>
<tr><td><code>%...U</code></td>
        <td>질의문자열을 제외한 요청 URL 경로.</td></tr>
<tr class="odd"><td><code>%...v</code></td>
        <td>요청을 서비스한 서버의 정규 <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>.</td></tr>
<tr><td><code>%...V</code></td>
        <td><code class="directive"><a href="../mod/core.html#usecanonicalname">UseCanonicalName</a></code>
        설정에 따른 서버명.</td></tr>
<tr class="odd"><td><code>%...X</code></td>
        <td>응답을 마쳤을때 연결 상태.

        <table>
        
        <tr><td><code>X</code> =</td>
            <td>응답을 마치기 전에 연결이 끊어졌다.</td></tr>
        <tr><td><code>+</code> =</td>
            <td>응답을 보낸후에도 연결이 살아있다(keep alive).</td></tr>
        <tr><td><code>-</code> = </td>
            <td>응답을 보낸후 연결이 끊어졌다.</td></tr>
        </table>

        <p>(아파치 1.3 후반 버전에서 이 지시어는
        <code>%...c</code>였지만, 전통적인 ssl
        <code>%...{<var>var</var>}c</code> 문법과 겹쳐서
        변경했다.)</p></td></tr>
<tr><td><code>%...I</code></td>
        <td>요청과 헤더를 포함한 수신 바이트수로 0일 수 없다.
        이를 사용하려면 <code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>가 필요하다.</td></tr>
<tr class="odd"><td><code>%...O</code></td>
        <td>헤더를 포함한 송신 바이트수로 0일 수 없다. 이를
        사용하려면 <code class="module"><a href="../mod/mod_logio.html">mod_logio</a></code>가 필요하다.</td></tr>
</table>

    <p>"<var>...</var>"에는 (<em>예를 들어</em>,
    <code>"%h %u %r %s %b"</code>) 아무것도 없거나, 항목을 포함할
    조건이 나온다 (조건을 만족하지 않으면 자리에 "-"를 기록한다).
    조건은 앞에 "!"를 붙이거나 안붙인 HTTP 상태코드 목록으로
    작성한다. 예를 들어, "%400,501{User-agent}i"는 400 (Bad
    Request) 오류와 501 (Not Implemented) 오류일때만
    <code>User-agent:</code>를 로그에 남기고,
    "%!200,304,302{Referer}i"는 정상적인 상태가 <em>아닌</em>
    모든 요청에 대해 <code>Referer:</code>를 로그에 남긴다.</p>

    <p>수정자 "&lt;"와 "&gt;"는 내부 리다이렉션된 요청에서 각각
    처음 요청을 말할지 마지막 요청을 말할지 선택한다. 기본적으로
    <code>%s, %U, %T, %D, %r</code>은 처음 요청을 보고, 나머지
    <code>%</code> 지시어는 마지막 요청을 본다. 그래서
    <code>%&gt;s</code>는 요청의 마지막 상태(status)를 기록하고,
    <code>%&lt;u</code>는 인증으로 보호하지 않는 자원으로 내부
    라다이렉션된 경우에도 처음에 인증한 사용자를 기록한다.</p>

    <p>2.0.46 이전의 httpd 2.0 버전은 <code>%...r</code>,
    <code>%...i</code>, <code>%...o</code>의 결과 문자열을 그대로
    두었다. 이유는 Common Log Format의 요구사항을 따르기위해서였다.
    즉, 클라이언트가 제어문자를 로그에 집어넣을 수 있기때문에
    로그파일을 그대로 다룰 때는 조심해야 한다.</p>

    <p>보안상 이유로 2.0.46부터 출력할 수 없는 문자나 다른 특수문자를
    <code>\x<var>hh</var></code>로 표현한다. 여기서 <var>hh</var>는
    해당 바이트의 16진수 표현을 나타낸다. 이 규칙의 예외는 백슬래쉬를
    앞에 붙이는 <code>"</code>와 <code>\</code>, 그리고 C언어
    형식의 공백문자들(<code>\n</code>, <code>\t</code> 등)이다.</p>

    <p>일반적으로 많이 사용하는 로그 형식은 다음과 같다.</p>

    <dl>
      <dt>Common Log Format (CLF)</dt>
      <dd><code>"%h %l %u %t \"%r\" %&gt;s %b"</code></dd>

      <dt>가상호스트 정보를 포함한 Common Log Format</dt>
      <dd><code>"%v %h %l %u %t \"%r\" %&gt;s %b"</code></dd>

      <dt>NCSA extended/combined 로그 형식</dt>
      <dd><code>"%h %l %u %t \"%r\" %&gt;s %b \"%{Referer}i\"
      \"%{User-agent}i\""</code></dd>

      <dt>Referer 로그 형식</dt>
      <dd><code>"%{Referer}i -&gt; %U"</code></dd>

      <dt>Agent (브라우저) 로그 형식</dt>
      <dd><code>"%{User-agent}i"</code></dd>
    </dl>

    <p>요청을 서비스하는 서버의 정규 <code class="directive"><a href="../mod/core.html#servername">ServerName</a></code>과 <code class="directive"><a href="../mod/mpm_common.html#listen">Listen</a></code>은 각각 <code>%v</code>와
    <code>%p</code>를 사용한다. 로그분석 프로그램이 실제로 요청을
    서비스하는 호스트를 알기위해 가상호스트 찾기 알고리즘을
    가질 필요없도록 이들 값은 <code class="directive"><a href="../mod/core.html#usecanonicalname">UseCanonicalName</a></code> 설정과 무관하다.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="section">
<h2 id="security">보안상 고려할 점 <a title="Permanent link" href="#security" class="permalink">&para;</a></h2>
    <p>서버를 시작하는 사용자외에 다른 사용자가 로그파일을 저장하는
    디렉토리에 쓰기 권한을 가질때 왜 보안에 문제가 생기는지
    <a href="../misc/security_tips.html#serverroot">보안 팁</a>
    문서를 참고하라.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="directive-section"><h2 id="bufferedlogs"><span id="BufferedLogs">BufferedLogs</span> 지시어 <a title="Permanent link" href="#bufferedlogs" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">설명:</a></th><td>Buffer log entries in memory before writing to disk</td></tr>
<tr><th><a href="directive-dict.html#Syntax">문법:</a></th><td><code></code></td></tr>
<tr><th><a href="directive-dict.html#Context">사용장소:</a></th><td>주서버설정</td></tr>
<tr><th><a href="directive-dict.html#Status">상태:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">모듈:</a></th><td>mod_log_config</td></tr>
</table><p>Documentation not yet translated. Please see English version of document.</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="directive-section"><h2 id="customlog"><span id="CustomLog">CustomLog</span> 지시어 <a title="Permanent link" href="#customlog" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">설명:</a></th><td>로그파일 이름과 형식을 지정한다</td></tr>
<tr><th><a href="directive-dict.html#Syntax">문법:</a></th><td><code>CustomLog  <var>file</var>|<var>pipe</var>
<var>format</var>|<var>nickname</var>
[env=[!]<var>environment-variable</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">사용장소:</a></th><td>주서버설정, 가상호스트</td></tr>
<tr><th><a href="directive-dict.html#Status">상태:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">모듈:</a></th><td>mod_log_config</td></tr>
</table>
    <p>서버가 요청을 로그에 남길때 <code class="directive">CustomLog</code>
    지시어를 사용한다. 로그 형식을 지정하고, 환경변수를 사용하여
    요청의 특징에 따라 선택적으로 로그를 남길 수도 있다.</p>

    <p>로그를 기록할 장소를 지정하는 첫번째 아규먼트에는 다음
    둘중 하나를 사용한다.</p>

    <dl>
      <dt><var>file</var></dt>
      <dd><code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>에
      상대적인 파일명.</dd>

      <dt><var>pipe</var></dt>
      <dd>파이프문자 "<code>|</code>"뒤에 로그 정보를 표준입력으로
      받을 프로그램 경로를 적는다.

      <div class="warning"><h3>보안:</h3>
      <p>프로그램을 사용한다면 프로그램은 웹서버를 시작한 사용자
      권한으로 실행된다. 서버를 root로 시작한다면 프로그램도
      root로 실행하므로 프로그램이 안전한지 확인하라.</p>
      </div>
      <div class="warning"><h3>주의</h3>
        <p>유닉스가 아닌 플래폼에서 파일경로를 입력할때 플래폼이
        백슬래쉬를 사용하더라도 반드시 슬래쉬를 사용해야 한다.
        일반적으로 설정파일에서는 항상 슬래쉬를 사용하는 것이
        좋다.</p>
      </div></dd>
    </dl>

    <p>두번째 아규먼트는 로그파일에 기록할 내용을 지정한다.
    전에 <code class="directive"><a href="#logformat">LogFormat</a></code>으로
    정의한 <var>nickname</var>을 사용하거나 직접 <a href="#formats">로그 형식</a> 절에서 설명한 <var>format</var>
    문자열을 사용할 수 있다.</p>

    <p>예를 들어, 다음 두 지시어는 똑같은 일을 한다.</p>

    <div class="example"><p><code>
      # 형식 별칭을 사용한 CustomLog<br>
      LogFormat "%h %l %u %t \"%r\" %&gt;s %b" common<br>
      CustomLog logs/access_log common<br>
      <br>
      # 직접 형식 문자열을 사용한 CustomLog<br>
      CustomLog logs/access_log "%h %l %u %t \"%r\" %&gt;s %b"
    </code></p></div>

    <p>세번째 아규먼트는 없어도 되며, 특정 서버 환경변수 유무에
    따라 요청을 로그에 기록할지 여부를 결정한다. 요청에 지정한
    <a href="../env.html">환경변수</a>가 정의되있다면 (혹은
    '<code>env=!<var>name</var></code>'를 사용한 경우 없다면)
    요청을 로그에 기록한다.</p>

    <p><code class="module"><a href="../mod/mod_setenvif.html">mod_setenvif</a></code>나 <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>
    모듈을 사용하여 요청별로 환경변수를 설정할 수 있다. 예를
    들어, 서버가 GIF 그림에 대한 모든 요청을 주서버 로그가 아닌
    다른 로그파일에 기록하려면,</p>
    
    <div class="example"><p><code>
      SetEnvIf Request_URI \.gif$ gif-image<br>
      CustomLog gif-requests.log common env=gif-image<br>
      CustomLog nongif-requests.log common env=!gif-image
    </code></p></div>

</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="directive-section"><h2 id="globallog"><span id="GlobalLog">GlobalLog</span> 지시어 <a title="Permanent link" href="#globallog" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">설명:</a></th><td>Sets filename and format of log file</td></tr>
<tr><th><a href="directive-dict.html#Syntax">문법:</a></th><td><code>GlobalLog <var>file</var>|<var>pipe</var>
<var>format</var>|<var>nickname</var>
[env=[!]<var>environment-variable</var>|
expr=<var>expression</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Context">사용장소:</a></th><td>주서버설정</td></tr>
<tr><th><a href="directive-dict.html#Status">상태:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">모듈:</a></th><td>mod_log_config</td></tr>
<tr><th><a href="directive-dict.html#Compatibility">지원:</a></th><td>Available in Apache HTTP Server 2.4.19 and later</td></tr>
</table><p>The documentation for this directive has
            not been translated yet. Please have a look at the English
            version.</p></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="directive-section"><h2 id="logformat"><span id="LogFormat">LogFormat</span> 지시어 <a title="Permanent link" href="#logformat" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">설명:</a></th><td>로그파일에 사용할 형식을 기술한다</td></tr>
<tr><th><a href="directive-dict.html#Syntax">문법:</a></th><td><code>LogFormat <var>format</var>|<var>nickname</var>
[<var>nickname</var>]</code></td></tr>
<tr><th><a href="directive-dict.html#Default">기본값:</a></th><td><code>LogFormat "%h %l %u %t \"%r\" %&gt;s %b"</code></td></tr>
<tr><th><a href="directive-dict.html#Context">사용장소:</a></th><td>주서버설정, 가상호스트</td></tr>
<tr><th><a href="directive-dict.html#Status">상태:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">모듈:</a></th><td>mod_log_config</td></tr>
</table>
    <p>이 지시어는 접근 로그파일의 형식을 지정한다.</p>

    <p><code class="directive">LogFormat</code> 지시어는 두가지 형식으로
    사용한다. 첫번째 형식은 아규먼트를 한개만 사용하여 다음
    <code class="directive">TransferLog</code> 지시어들이 사용할 로그
    형식을 지정한다. 이 아규먼트에 위의 <a href="#formats">로그
    형식 지정하기</a> 절에서 설명한 <var>format</var>을 직접
    사용하거나, 다음에 설명할 <code class="directive">LogFormat</code>
    지시어로 미리 정의한 (로그 형식을 지칭하는) <var>nickname</var>을
    사용할 수 있다.</p>

    <p><code class="directive">LogFormat</code> 지시어의 두번째 형식은
    <var>format</var>과 <var>nickname</var>을 연결한다. 그러면
    뒤에서 사용하는 <code class="directive">LogFormat</code>이나 <code class="directive"><a href="#customlog">CustomLog</a></code> 지시어에 반복해서
    형식 문자열을 모두 입력하는 대신 <var>nickname</var>을 사용할
    수 있다. 별칭을 정의하는 <code class="directive">LogFormat</code>
    지시어는 <strong>이 외에는 아무 기능을 하지 않는다</strong>.
    즉, 별칭<em>만</em>을 정의하며, 실제로 형식을 적용하거나
    형식을 기본값으로 만들지 않는다. 그러므로 다음에 나오는
    <code class="directive"><a href="#transferlog">TransferLog</a></code>
    지시어에 영향을 주지 않는다. 또,
    <code class="directive">LogFormat</code>은 별칭으로 다른 별칭을
    정의할 수 있다. 별칭 이름에는 퍼센트 기호(<code>%</code>)를
    사용할 수 없음을 주의하라.</p>

    <div class="example"><h3>예제</h3><p><code>
      LogFormat "%v %h %l %u %t \"%r\" %&gt;s %b" vhost_common
    </code></p></div>

</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif"></a></div>
<div class="directive-section"><h2 id="transferlog"><span id="TransferLog">TransferLog</span> 지시어 <a title="Permanent link" href="#transferlog" class="permalink">&para;</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">설명:</a></th><td>로그파일 위치를 설정한다</td></tr>
<tr><th><a href="directive-dict.html#Syntax">문법:</a></th><td><code>TransferLog <var>file</var>|<var>pipe</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">사용장소:</a></th><td>주서버설정, 가상호스트</td></tr>
<tr><th><a href="directive-dict.html#Status">상태:</a></th><td>Base</td></tr>
<tr><th><a href="directive-dict.html#Module">모듈:</a></th><td>mod_log_config</td></tr>
</table>
    <p>이 지시어는 <code class="directive"><a href="#customlog">CustomLog</a></code> 지시어와 아규먼트와
    기능이 비슷하지만, 로그 형식을 직접 지정하거나 요청을 조건에
    따라 로그에 남길 수 없다. 대신 가장 최근 사용한 (별칭을
    정의하지 않은) <code class="directive"><a href="#logformat">LogFormat</a></code> 지시어가 지정한
    로그 형식을 사용한다. 미리 형식을 지정하지 않았다면 Common
    Log Format을 사용한다.</p>

    <div class="example"><h3>예제</h3><p><code>
      LogFormat "%h %l %u %t \"%r\" %&gt;s %b \"%{Referer}i\" \"%{User-agent}i\""<br>
      TransferLog logs/access_log
    </code></p></div>

</div>
</div>
<div class="bottomlang">
<p><span>가능한 언어: </span><a href="../en/mod/mod_log_config.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/mod/mod_log_config.html" hreflang="fr" rel="alternate" title="Fran&ccedil;ais">&nbsp;fr&nbsp;</a> |
<a href="../ja/mod/mod_log_config.html" hreflang="ja" rel="alternate" title="Japanese">&nbsp;ja&nbsp;</a> |
<a href="../ko/mod/mod_log_config.html" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/mod/mod_log_config.html" hreflang="tr" rel="alternate" title="T&uuml;rk&ccedil;e">&nbsp;tr&nbsp;</a></p>
</div><div id="footer">
<p class="apache">Copyright 2026 The Apache Software Foundation.<br>Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">모듈</a> | <a href="../mod/quickreference.html">지시어들</a> | <a href="https://cwiki.apache.org/confluence/display/httpd/FAQ">FAQ</a> | <a href="../glossary.html">용어</a> | <a href="../sitemap.html">사이트맵</a> | <a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2">Report a bug</a></p></div><script><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
var langToggle = document.querySelector('.lang-toggle');
var topLang = document.querySelector('.toplang');
if (langToggle && topLang) {
    langToggle.addEventListener('click', function() { topLang.classList.toggle('open'); });
}
var qv = document.getElementById('quickview');
if (qv) {
    document.body.appendChild(qv);
    var qvBtn = document.createElement('button');
    qvBtn.className = 'qv-toggle';
    qvBtn.setAttribute('aria-label', 'Toggle page navigation');
    qvBtn.innerHTML = '&#9776;';
    document.body.appendChild(qvBtn);
    qvBtn.addEventListener('click', function() {
        var isOpen = qv.classList.toggle('open');
        if (isOpen) {
            qv.style.top = window.scrollY + 10 + 'px';
        }
    });
    window.addEventListener('scroll', function() { qv.classList.remove('open'); });
}
//--><!]]></script>
</body></html>