⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mod_log_config.html

📁 这个是我在web培训时老师提供的手册
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<tr><th><a href="directive-dict.html#Default">默认值</a></th><td><code>BufferedLogs Off</code></td></tr>
<tr><th><a href="directive-dict.html#Context">作用域</a></th><td>server config</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</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>仅在 Apache 2.0.41 及以后的版本中可用</td></tr>
</table>
    <p><code class="directive">BufferedLogs</code>指令使得<code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>先在内存中缓冲一些日志内容,然后一次性写入磁盘,而不是立即写入。在一些系统上这样做可以提高磁盘性能。这个设置仅能够针对全局进行设置,不能单独针对虚拟主机进行设置。</p>

    <div class="note">这是一个试验性的指令,请在使用中多加小心。</div>

</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="CookieLog" id="CookieLog">CookieLog</a> <a name="cookielog" id="cookielog">指令</a></h2>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#AAAAAA" class="directive">
<tr><th><a href="directive-dict.html#Description">说明</a></th><td>设定针对cookies的日志文件名</td></tr>
<tr><th><a href="directive-dict.html#Syntax">语法</a></th><td><code>CookieLog <var>filename</var></code></td></tr>
<tr><th><a href="directive-dict.html#Context">作用域</a></th><td>server config, virtual host</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</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>反对使用该指令</td></tr>
</table>
    <p><code class="directive">CookieLog</code>指令使用cookies作为日志文件名。文件是相对于<code class="directive"><a href="../mod/core.html#serverroot">ServerRoot</a></code>目录的。包含本指令仅仅是为了保持与<code>mod_cookies</code>模块的兼容,并且反对使用。</p>

</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="directive-section"><h2><a name="CustomLog" id="CustomLog">CustomLog</a> <a name="customlog" id="customlog">指令</a></h2>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#AAAAAA" 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>server config, virtual host</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</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>如果这里用到了程序,那么这个程序是以启动<code class="program"><a href="../programs/httpd.html">httpd</a></code>的用户来执行的。因此如果启动httpd的用户是root ,那这个程序也将以root身份来运行;你需要确认这个程序是安全的。</p>
      </div>
      <div class="warning"><h3>注意</h3>
        <p>当在非UNIX平台上输入文件路径的时候,要特别注意即使平台本身是使用反斜杠(\)来分隔路径的,在这里也只能使用正斜杠(/)。通常在配置文件里只用正斜杠(/)来分隔路径总是不会错的。</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>
      # 使用nickname<br />
      LogFormat "%h %l %u %t \"%r\" %&gt;s %b" common<br />
      CustomLog logs/access_log common<br />
      <br />
      # 明确使用格式格式字符串<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>

    <p>或者为了复制旧有的RefererIgnore指令的行为,你可以使用下面的指令:</p>

    <div class="example"><p><code>
    SetEnvIf Referer example\.com localreferer<br />
    CustomLog referer.log referer env=!localreferer
    </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><a name="LogFormat" id="LogFormat">LogFormat</a> <a name="logformat" id="logformat">指令</a></h2>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#AAAAAA" 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>server config, virtual host</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</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>来定义。另外它也可以通过下述的方法使用<var>nickname</var>来引用某个之前的<code class="directive">LogFormat</code>定义的日志格式。</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>指令中,就不用一再重复整个冗长的格式串。定义别名的<code class="directive">LogFormat</code>指令仅仅用来定义一个<var>nickname</var> ,而<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><a name="TransferLog" id="TransferLog">TransferLog</a> <a name="transferlog" id="transferlog">指令</a></h2>
<table border="1" cellpadding="0" cellspacing="0" bordercolor="#AAAAAA" 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>server config, virtual host</td></tr>
<tr><th><a href="directive-dict.html#Status">状态</a></th><td>基本(B)</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>指令指定。如果没有定义任何日志格式,则使用通用日志格式。</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 id="footer">
<p class="apache">本文允许自由使用、分发、转载,但必须保留译者署名;详见:<a href="../translator_announcement.html#announcement">译者声明</a>。</p>
<p class="menu"><a href="../mod/index.html">模块索引</a> | <a href="../mod/directives.html">指令索引</a> | <a href="../faq/index.html">常见问题</a> | <a href="../glossary.html">词汇表</a> | <a href="../sitemap.html">站点导航</a></p></div>
</body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -