<?xml version="1.0" encoding="EUC-JP"?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
-
- <title>¥â¥¸¥å¡¼¥ë¤Î Apache 1.3 ¤«¤é Apache 2.0 ¤Ø¤Î°Ü¿¢</title>
- </head>
- <!-- English revision: 1.8 -->
- <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
-
- <body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
- vlink="#000080" alink="#FF0000">
- <div align="center">
- <img src="../images/sub.gif" alt="[APACHE DOCUMENTATION]" />
-
- <h3>Apache HTTP Server Version 2.1</h3>
- </div>
-
-
-
- <h1 align="center">¥â¥¸¥å¡¼¥ë¤ò Apache 1.3 ¤«¤é Apache 2.0 ¤Ø</h1>
-
- <p>¤³¤Îʸ½ñ¤Ï mod_mmap_static ¥â¥¸¥å¡¼¥ë¤ò Apache 2.0 ÍѤ˰ܿ¢¤·¤¿»þ¤Ë
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head><!--
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ This file is generated from xml source: DO NOT EDIT
+ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
+ -->
+<title>¥â¥¸¥å¡¼¥ë¤Î Apache 1.3 ¤«¤é Apache 2.0 ¤Ø¤Î°Ü¿¢ - Apache HTTP ¥µ¡¼¥Ð</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 href="../images/favicon.ico" rel="shortcut icon" /></head>
+<body id="manual-page"><div id="page-header">
+<p class="menu"><a href="../mod/">¥â¥¸¥å¡¼¥ë</a> | <a href="../mod/directives.html">¥Ç¥£¥ì¥¯¥Æ¥£¥Ö</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">ÍѸì</a> | <a href="../sitemap.html">¥µ¥¤¥È¥Þ¥Ã¥×</a></p>
+<p class="apache">Apache HTTP ¥µ¡¼¥Ð ¥Ð¡¼¥¸¥ç¥ó 2.1</p>
+<img alt="" src="../images/feather.gif" /></div>
+<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
+<div id="path">
+<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP ¥µ¡¼¥Ð</a> > <a href="http://httpd.apache.org/docs-project/">¥É¥¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó</a> > <a href="../">¥Ð¡¼¥¸¥ç¥ó 2.1</a> > <a href="./">Developer Documentation</a></div><div id="page-content"><div id="preamble"><h1>¥â¥¸¥å¡¼¥ë¤Î Apache 1.3 ¤«¤é Apache 2.0 ¤Ø¤Î°Ü¿¢</h1>
+<div class="toplang">
+<p><span>Available Languages: </span><a href="../en/developer/modules.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../ja/developer/modules.html" title="Japanese"> ja </a></p>
+</div>
+
+ <p>¤³¤Îʸ½ñ¤Ï <code>mod_mmap_static</code> ¥â¥¸¥å¡¼¥ë¤ò Apache 2.0 ÍѤ˰ܿ¢¤·¤¿»þ¤Ë
³Ø¤ó¤À·Ð¸³¤ò¤â¤È¤Ë½ñ¤¤¤¿¡¢ºÇ½é¤Î¼ê°ú¤½ñ¤Ç¤¹¡£¤Þ¤À¤Þ¤À´°Á´¤¸¤ã¤Ê¤¤¤·¡¢
¤Ò¤ç¤Ã¤È¤¹¤ë¤È´Ö°ã¤Ã¤Æ¤¤¤ëÉôʬ¤â¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¤¬¡¢
¼è¤Ã³Ý¤ê¤Ë¤Ï¤Ê¤ë¤Ç¤·¤ç¤¦¡£</p>
- <hr />
-
- <h2>´Êñ¤ÊÊѹ¹ÅÀ¡Ä</h2>
-
- <h3>¥¯¥ê¡¼¥ó¥Ê¥Ã¥× ¥ë¡¼¥Á¥ó</h3>
-
- <p>¥¯¥ê¡¼¥ó¥Ê¥Ã¥×¥ë¡¼¥Á¥ó¤Ï apr_status_t ·¿¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
- ¤½¤·¤Æ¡¢apr_status_t ·¿¤ÎÃͤòÊÖ¤µ¤Ê¤¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
- ¥¯¥ê¡¼¥ó¥Ê¥Ã¥×Ãæ¤Î¥¨¥é¡¼¤òÄÌÃΤ¹¤ëɬÍפ¬¤Ê¤±¤ì¤Ð¡¢ÊÖ¤êÃͤÏÉáÄÌ¡¢
- ARP_SUCCESS ¤Ç¤¹¡£¤¿¤È¤¨¥¨¥é¡¼¤òÄÌÃΤ·¤¿¤È¤·¤Æ¤â¡¢
- ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤¬¤½¤ÎÄÌÃΤò¥Á¥§¥Ã¥¯¤·¤¿¤ê¡¢
- ¥¨¥é¡¼¤Ë±þ¤¸¤¿Æ°ºî¤ò¤¹¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤³¤È¤Ëµ¤¤ò¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£</p>
-
- <h3>½é´ü²½¥ë¡¼¥Á¥ó</h3>
+</div>
+<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#easy">´Êñ¤ÊÊѹ¹ÅÀ</a></li>
+<li><img alt="" src="../images/down.gif" /> <a href="#messy">¤â¤Ã¤ÈÌñ²ð¤ÊÊѹ¹ÅÀ¡Ä</a></li>
+</ul></div>
+<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="easy" id="easy">´Êñ¤ÊÊѹ¹ÅÀ</a></h2>
+
+ <h3><a name="cleanup" id="cleanup">¥¯¥ê¡¼¥ó¥Ê¥Ã¥× ¥ë¡¼¥Á¥ó</a></h3>
+ <p>¥¯¥ê¡¼¥ó¥Ê¥Ã¥×¥ë¡¼¥Á¥ó¤Ï <code>apr_status_t</code> ·¿¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
+ ¤½¤·¤Æ¡¢apr_status_t ·¿¤ÎÃͤòÊÖ¤µ¤Ê¤¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
+ ¥¯¥ê¡¼¥ó¥Ê¥Ã¥×Ãæ¤Î¥¨¥é¡¼¤òÄÌÃΤ¹¤ëɬÍפ¬¤Ê¤±¤ì¤Ð¡¢ÊÖ¤êÃͤÏÉáÄÌ¡¢
+ <code>ARP_SUCCESS</code> ¤Ç¤¹¡£¤¿¤È¤¨¥¨¥é¡¼¤òÄÌÃΤ·¤¿¤È¤·¤Æ¤â¡¢
+ ¤¹¤Ù¤Æ¤Î¥³¡¼¥É¤¬¤½¤ÎÄÌÃΤò¥Á¥§¥Ã¥¯¤·¤¿¤ê¡¢
+ ¥¨¥é¡¼¤Ë±þ¤¸¤¿Æ°ºî¤ò¤¹¤ë¤ï¤±¤Ç¤Ï¤Ê¤¤¤³¤È¤Ëµ¤¤ò¤Ä¤±¤Æ¤¯¤À¤µ¤¤¡£</p>
+
+
+
+ <h3><a name="init" id="init">½é´ü²½¥ë¡¼¥Á¥ó</a></h3>
<p>½é´ü²½¥ë¡¼¥Á¥ó¤Ï½èÍýÁ´ÂΤ«¤é¸«¤Æ¤·¤Ã¤¯¤ê¤¯¤ë¤è¤¦¤Ê°ÕÌ£¤òɽ¤¹¤è¤¦¤Ë¡¢
- ̾Á°¤¬Êѹ¹¤µ¤ì¤Þ¤·¤¿¡£¤Ç¤¹¤«¤é¡¢mmap_init ¤«¤é mmap_post_config
+ ̾Á°¤¬Êѹ¹¤µ¤ì¤Þ¤·¤¿¡£¤Ç¤¹¤«¤é¡¢<code>mmap_init</code> ¤«¤é <code>mmap_post_config</code>
¤Î¤è¤¦¤Ë¤Á¤ç¤Ã¤ÈÊѹ¹¤µ¤ì¤Þ¤·¤¿¡£
ÅϤµ¤ì¤ë°ú¿ô¤ÏÂçÉý¤ËÊѹ¹¤µ¤ì¡¢¼¡¤Î¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£</p>
- <ul style="list-style:none">
- <li>apr_pool_t *p,</li>
-
- <li>apr_pool_t *plog,</li>
-
- <li>apr_pool_t *ptemp,</li>
-
- <li>server_rec *s</li>
- </ul>
-
- <h3>¥Ç¡¼¥¿·¿</h3>
-
- <p>¥Ç¡¼¥¿·¿¤Î¤Û¤È¤ó¤É¤Ï APR ¤Ë°Ü¤µ¤ì¤Þ¤·¤¿¡£¤Ä¤Þ¤ê¡¢
- ¤¤¤¯¤Ä¤«¤Î̾Á°¤¬Á°½Ò¤Î¤è¤¦¤ËÊѹ¹¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
- »Ü¤¹¤Ù¤Êѹ¹ÅÀ¤Î´Êñ¤Ê°ìÍ÷¤ò°Ê²¼¤Ë¼¨¤·¤Þ¤¹¡£</p>
-
- <ul style="list-style:none">
- <li>pool ¤Ï apr_pool_t ¤Ë¤Ê¤ê¤Þ¤¹</li>
-
- <li>table ¤Ï apr_table_t ¤Ë¤Ê¤ê¤Þ¤¹</li>
- </ul>
-
- <hr />
-
- <h2><em>¤â¤Ã¤ÈÌñ²ð¤Ê</em>Êѹ¹ÅÀ¡Ä</h2>
-
- <h3>¥Õ¥Ã¥¯¤ÎÅÐÏ¿</h3>
-
- <p>¿·¤·¤¤¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ç¤ÏºîÀ®¤·¤¿´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹¤Î¤Ë
- °ìÏ¢¤Î¥Õ¥Ã¥¯¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥Õ¥Ã¥¯¤Ï¡¢¿·¤·¤¤´Ø¿ô
- static void register_hooks(void) ¤ò»È¤Ã¤ÆÅÐÏ¿¤¹¤ë¤è¤¦¡¢
- ¥â¥¸¥å¡¼¥ë¤Ë½ñ¤Â¤µ¤Ê¤¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
- ¤³¤Î´Ø¿ô¤Ï¡¢¤Ê¤Ë¤ò¤¹¤Ù¤¤«°ìöÍý²ò¤·¤Æ¤·¤Þ¤¨¤Ð¡¢
- ½½Ê¬¤Ë¤ï¤«¤ê¤ä¤¹¤¤¤â¤Î¤Ç¤¹¡£
- ¥ê¥¯¥¨¥¹¥È¤Î½èÍý¤Î¤¢¤ë¥¹¥Æ¡¼¥¸¤Ç¸Æ¤Ó½Ð¤µ¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤
- ´Ø¿ô¤ÏÅÐÏ¿¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ï¥ó¥É¥é¤ÏÅÐÏ¿¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
- ´Ø¿ô¤òÅÐÏ¿¤Ç¤¤ë¥Õ¥§¡¼¥º¤Ï¤¿¤¯¤µ¤ó¤¢¤ê¤Þ¤¹¡£
- ¤½¤ì¤¾¤ì¤Î¥Õ¥§¡¼¥º¤Ç¡¢´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹ÁêÂÐŪ¤Ê½çÈ֤ϡ¢
- ¤«¤Ê¤ê¤ÎÄøÅÙÀ©¸æ¤Ç¤¤Þ¤¹¡£</p>
-
- <p>°Ê²¼¤Ï¡¢mod_mmap_static ¤ËÄɲä·¤¿¥³¡¼¥É¤Ç¤¹:</p>
-
-<pre>
+ <ul>
+ <li><code>apr_pool_t *p</code></li>
+ <li><code>apr_pool_t *plog</code></li>
+ <li><code>apr_pool_t *ptemp</code></li>
+ <li><code>server_rec *s</code></li>
+ </ul>
+
+
+ <h3><a name="datatypes" id="datatypes">¥Ç¡¼¥¿·¿</a></h3>
+ <p>¥Ç¡¼¥¿·¿¤Î¤Û¤È¤ó¤É¤Ï <a href="http://apr.apache.org/">APR</a> ¤Ë°Ü¤µ¤ì¤Þ¤·¤¿¡£¤Ä¤Þ¤ê¡¢
+ ¤¤¤¯¤Ä¤«¤Î̾Á°¤¬Á°½Ò¤Î¤è¤¦¤ËÊѹ¹¤µ¤ì¤Æ¤¤¤Þ¤¹¡£
+ »Ü¤¹¤Ù¤Êѹ¹ÅÀ¤Î´Êñ¤Ê°ìÍ÷¤ò°Ê²¼¤Ë¼¨¤·¤Þ¤¹¡£</p>
+
+ <ul>
+ <li><code>pool</code> becomes <code>apr_pool_t</code></li>
+ <li><code>table</code> becomes <code>apr_table_t</code></li>
+ </ul>
+
+</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
+<div class="section">
+<h2><a name="messy" id="messy">¤â¤Ã¤ÈÌñ²ð¤ÊÊѹ¹ÅÀ¡Ä</a></h2>
+
+ <h3><a name="register-hooks" id="register-hooks">¥Õ¥Ã¥¯¤ÎÅÐÏ¿</a></h3>
+ <p>¿·¤·¤¤¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ç¤ÏºîÀ®¤·¤¿´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹¤Î¤Ë
+ °ìÏ¢¤Î¥Õ¥Ã¥¯¤ò»ÈÍѤ·¤Þ¤¹¡£¤³¤Î¥Õ¥Ã¥¯¤Ï¡¢¿·¤·¤¤´Ø¿ô
+ <code>static void register_hooks(void)</code> ¤ò»È¤Ã¤ÆÅÐÏ¿¤¹¤ë¤è¤¦¡¢
+ ¥â¥¸¥å¡¼¥ë¤Ë½ñ¤Â¤µ¤Ê¤¯¤Æ¤Ï¤Ê¤ê¤Þ¤»¤ó¡£
+ ¤³¤Î´Ø¿ô¤Ï¡¢¤Ê¤Ë¤ò¤¹¤Ù¤¤«°ìöÍý²ò¤·¤Æ¤·¤Þ¤¨¤Ð¡¢
+ ½½Ê¬¤Ë¤ï¤«¤ê¤ä¤¹¤¤¤â¤Î¤Ç¤¹¡£
+ ¥ê¥¯¥¨¥¹¥È¤Î½èÍý¤Î¤¢¤ë¥¹¥Æ¡¼¥¸¤Ç¸Æ¤Ó½Ð¤µ¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤
+ ´Ø¿ô¤ÏÅÐÏ¿¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£¥Ï¥ó¥É¥é¤ÏÅÐÏ¿¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡£
+ ´Ø¿ô¤òÅÐÏ¿¤Ç¤¤ë¥Õ¥§¡¼¥º¤Ï¤¿¤¯¤µ¤ó¤¢¤ê¤Þ¤¹¡£
+ ¤½¤ì¤¾¤ì¤Î¥Õ¥§¡¼¥º¤Ç¡¢´Ø¿ô¤ò¸Æ¤Ó½Ð¤¹ÁêÂÐŪ¤Ê½çÈ֤ϡ¢
+ ¤«¤Ê¤ê¤ÎÄøÅÙÀ©¸æ¤Ç¤¤Þ¤¹¡£</p>
+
+ <p>°Ê²¼¤Ï¡¢<code>mod_mmap_static</code> ¤ËÄɲä·¤¿¥³¡¼¥É¤Ç¤¹:</p>
+
+ <div class="example"><pre>
static void register_hooks(void)
{
static const char * const aszPre[]={ "http_core.c",NULL };
ap_hook_post_config(mmap_post_config,NULL,NULL,HOOK_MIDDLE);
ap_hook_translate_name(mmap_static_xlat,aszPre,NULL,HOOK_LAST);
-};
-</pre>
+};</pre></div>
<p>¤³¤³¤Ç¤Ï¸Æ¤Ó¤À¤¹¤Ù¤Æó¤Ä¤Î´Ø¿ô¤òÅÐÏ¿¤·¤Æ¤¤¤Þ¤¹¡£°ì¤Ä¤Ï
- post_config ¥¹¥Æ¡¼¥¸ÍÑ (¤Û¤È¤ó¤É¤¹¤Ù¤Æ¤Î¥â¥¸¥å¡¼¥ë¤Ï¤³¤ì¤¬É¬ÍפǤ¹) ¤Ç¡¢
- ¤â¤¦°ì¤Ä¤Ï translate_name ¥Õ¥§¡¼¥ºÍѤǤ¹¡£
+ <code>post_config</code> ¥¹¥Æ¡¼¥¸ÍÑ (¤Û¤È¤ó¤É¤¹¤Ù¤Æ¤Î¥â¥¸¥å¡¼¥ë
+ ¤Ï¤³¤ì¤¬É¬ÍפǤ¹) ¤Ç¡¢¤â¤¦°ì¤Ä¤Ï <code>translate_name</code> ¥Õ¥§¡¼¥ºÍѤǤ¹¡£
¤½¤ì¤¾¤ì¤Î´Ø¿ô¤Ï̾Á°¤Ï°ã¤¦¤±¤ì¤É¤â·Á¼°¤ÏƱ¤¸¤Ç¤¢¤ë¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡£
¤½¤ì¤Ç¤Ï¡¢·Á¼°¤Ï¤É¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤Ç¤·¤ç¤¦¤«?</p>
- <p><code><strong>ap_hook_[¥Õ¥§¡¼¥ºÌ¾](´Ø¿ô̾, Àè¹Ô, ¸å¹Ô, °ÌÃÖ);</strong></code></p>
-
- <p>3¤Ä¤Î°ÌÃÖ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡Ä</p>
+ <div class="example"><p><code>
+ ap_hook_<var>phase_name</var>(<var>function_name</var>,
+ <var>predecessors</var>, <var>successors</var>, <var>position</var>);
+ </code></p></div>
- <ul style="list-style:none">
- <li>HOOK_FIRST</li>
+ <p>»°¤Ä¤Î°ÌÃÖ¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡Ä</p>
- <li>HOOK_MIDDLE</li>
-
- <li>HOOK_LAST</li>
- </ul>
+ <ul>
+ <li><code>HOOK_FIRST</code></li>
+ <li><code>HOOK_MIDDLE</code></li>
+ <li><code>HOOK_LAST</code></li>
+ </ul>
<p>°ÌÃÖ¤òÄêµÁ¤¹¤ë¤Ë¤Ï¡¢¾åµ¤Î¡Ö°ÌÃ֡פò»ØÄꤷ¡¢
½¤¾þ»Ò¤Ç¤¢¤ë¡ÖÀè¹Ô¡×¤È¡Ö¸å¹Ô¡×¤Ç¼ê¤ò²Ã¤¨¤Þ¤¹¡£
¡ÖÀè¹Ô¡×¤Ï´Ø¿ô¤Î¼Â¹ÔÁ°¤Ë¸Æ¤Ð¤ì¤ë¤â¤Î¤Ç¡¢
¡Ö¸å¹Ô¡×¤Ï¼Â¹Ô¸å¤Ë¸Æ¤Ð¤ì¤ë¤â¤Î¤Ç¤¹¡£</p>
- <p>mod_mmap_static ¤Î¾ì¹ç¡¢post_config ¥¹¥Æ¡¼¥¸¤Ç¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¤¬¡¢
- mmap_static_xlat ¤¬ core ¥â¥¸¥å¡¼¥ë¤¬Ì¾Á°¤ÎÊÑ´¹¤ò¼Â¹Ô¤·¤¿¸å¤Ë
- ¸Æ¤Ð¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£
- ¤½¤³¤Ç aszPre ¤ò»È¤Ã¤Æ HOOK_LAST ¤Î½¤¾þ»Ò¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£</p>
-
- <h3>¥â¥¸¥å¡¼¥ë¤ÎÄêµÁ</h3>
+ <p><code>mod_mmap_static</code> ¤Î¾ì¹ç¡¢<code>post_config</code>
+ ¥¹¥Æ¡¼¥¸¤Ç¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¤¬¡¢
+ <code>mmap_static_xlat</code> ¤¬ core ¥â¥¸¥å¡¼¥ë¤¬Ì¾Á°¤ÎÊÑ´¹¤ò¼Â¹Ô¤·¤¿¸å¤Ë
+ <strong>¸Æ¤Ð¤ì¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó</strong>¡£
+ ¤½¤³¤Ç aszPre ¤ò»È¤Ã¤Æ <code>HOOK_LAST</code> ¤Î½¤¾þ»Ò¤òÄêµÁ¤·¤Æ¤¤¤Þ¤¹¡£</p>
+
- <p>¥â¥¸¥å¡¼¥ë¤ÎÄêµÁ¤òºîÀ®¤¹¤ëºÝ¤ËÃí°Õ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤
- ¥¹¥Æ¡¼¥¸¤Î¿ô¤Ï·ã¸º¤·¤Æ¤¤¤Þ¤¹¡£¸Å¤¤ÄêµÁ¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤·¤¿¡£</p>
+ <h3><a name="moddef" id="moddef">¥â¥¸¥å¡¼¥ë¤ÎÄêµÁ</a></h3>
+ <p>¥â¥¸¥å¡¼¥ë¤ÎÄêµÁ¤òºîÀ®¤¹¤ëºÝ¤ËÃí°Õ¤·¤Ê¤±¤ì¤Ð¤Ê¤é¤Ê¤¤
+ ¥¹¥Æ¡¼¥¸¤Î¿ô¤Ï·ã¸º¤·¤Æ¤¤¤Þ¤¹¡£¸Å¤¤ÄêµÁ¤Ï¼¡¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤·¤¿¡£</p>
-<pre>
-module MODULE_VAR_EXPORT [¥â¥¸¥å¡¼¥ë̾]_module =
+ <div class="example"><pre>
+module MODULE_VAR_EXPORT <var>module_name</var>_module =
{
STANDARD_MODULE_STUFF,
- /* ½é´ü²½´Ø¿ô */
- /* ¥Ç¥£¥ì¥¯¥È¥êÀßÄêºîÀ®´Ø¿ô */
- /* ¥Ç¥£¥ì¥¯¥È¥êÀßÄê¥Þ¡¼¥¸´Ø¿ô ¡½ ¥Ç¥Õ¥©¥ë¥È¤Ï¡Ö¾å½ñ¤¡× */
- /* ¥µ¡¼¥ÐÀßÄêºîÀ®´Ø¿ô */
- /* ¥µ¡¼¥ÐÀßÄê¥Þ¡¼¥¸´Ø¿ô */
- /* ¥³¥Þ¥ó¥É¡¦¥Ï¥ó¥É¥é */
- /* ¥Ï¥ó¥É¥é */
- /* ¥Õ¥¡¥¤¥ë̾ÊÑ´¹ */
+ /* initializer */
+ /* dir config creater */
+ /* dir merger --- default is to override */
+ /* server config */
+ /* merge server config */
+ /* command handlers */
+ /* handlers */
+ /* filename translation */
/* check_user_id */
- /* ǧ¾Ú¥Á¥§¥Ã¥¯ */
- /* ¥¢¥¯¥»¥¹À©¸Â¥Á¥§¥Ã¥¯ */
- /* MIME ·¿¥Á¥§¥Ã¥¯ */
- /* Ä´À° */
- /* ¥í¥°½ÐÎÏ */
- /* ¥Ø¥Ã¥À¥Ñ¡¼¥µ */
- /* »Ò¥×¥í¥»¥¹½é´ü²½ */
- /* »Ò¥×¥í¥»¥¹½ªÎ» */
- /* read-request ¸å */
-};
-</pre>
+ /* check auth */
+ /* check access */
+ /* type_checker */
+ /* fixups */
+ /* logger */
+ /* header parser */
+ /* child_init */
+ /* child_exit */
+ /* post read-request */
+};</pre></div>
<p>¿·¤·¤¤¹½Â¤ÂΤϤȤäƤ⥷¥ó¥×¥ë¤Ç¤¹¡Ä</p>
-
-<pre>
-module MODULE_VAR_EXPORT [¥â¥¸¥å¡¼¥ë̾]_module =
+ <div class="example"><pre>
+module MODULE_VAR_EXPORT <var>module_name</var>_module =
{
STANDARD20_MODULE_STUFF,
- /* ¥Ç¥£¥ì¥¯¥È¥êËèÀßÄ깽¤ÂκîÀ® */
- /* ¥Ç¥£¥ì¥¯¥È¥êËèÀßÄ깽¤ÂÎ¥Þ¡¼¥¸ */
- /* ¥µ¡¼¥ÐËèÀßÄ깽¤ÂκîÀ® */
- /* ¥µ¡¼¥ÐËèÀßÄ깽¤ÂκîÀ®¥Þ¡¼¥¸ */
- /* ¥³¥Þ¥ó¥É¡¦¥Ï¥ó¥É¥é */
- /* ¥Ï¥ó¥É¥é */
- /* ¥Õ¥Ã¥¯ÅÐÏ¿ */
- };
-</pre>
+ /* create per-directory config structures */
+ /* merge per-directory config structures */
+ /* create per-server config structures */
+ /* merge per-server config structures */
+ /* command handlers */
+ /* handlers */
+ /* register hooks */
+};</pre></div>
<p>¤³¤Î¤¦¤Á¤Î¤¤¤¯¤Ä¤«¤Ï¸Å¤¤¤â¤Î¤«¤é¿·¤·¤¤¤â¤Î¤ËľÀÜÆɤßÂؤ¨¤é¤ì¤ë¤â¤Î¤Ç¡¢
¤¤¤¯¤Ä¤«¤Ï¤½¤¦¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£¤É¤¦¤¹¤ì¤Ð¤¤¤¤¤Î¤«¤òÍ×Ì󤷤Ƥߤޤ¹¡£</p>
<p>ľÀÜÆɤßÂؤ¨¤é¤ì¤ë¥¹¥Æ¡¼¥¸:</p>
- <ul style="list-style:none">
- <li>/* ¥Ç¥£¥ì¥¯¥È¥êÀßÄêºîÀ®´Ø¿ô */ ==>
- /* ¥Ç¥£¥ì¥¯¥È¥êËèÀßÄ깽¤ÂκîÀ® */</li>
+ <dl>
+ <dt><code>/* ¥Ç¥£¥ì¥¯¥È¥êÀßÄêºîÀ®´Ø¿ô */</code></dt>
+ <dd><code>/* ¥Ç¥£¥ì¥¯¥È¥êËèÀßÄ깽¤ÂκîÀ® */</code></dd>
- <li>/* ¥µ¡¼¥ÐÀßÄêºîÀ®´Ø¿ô */ ==> /* ¥µ¡¼¥ÐËèÀßÄ깽¤ÂκîÀ® */</li>
+ <dt><code>/* ¥µ¡¼¥ÐÀßÄêºîÀ®´Ø¿ô */</code></dt>
+ <dd><code>/* ¥µ¡¼¥ÐËèÀßÄ깽¤ÂκîÀ® */</code></dd>
- <li>/* ¥Ç¥£¥ì¥¯¥È¥êÀßÄê¥Þ¡¼¥¸´Ø¿ô */ ==>
- /* ¥Ç¥£¥ì¥¯¥È¥êËèÀßÄ깽¤ÂÎ¥Þ¡¼¥¸ */</li>
+ <dt><code>/* ¥Ç¥£¥ì¥¯¥È¥êÀßÄê¥Þ¡¼¥¸´Ø¿ô */</code></dt>
+ <dd><code>/* ¥Ç¥£¥ì¥¯¥È¥êËèÀßÄ깽¤ÂÎ¥Þ¡¼¥¸ */</code></dd>
- <li>/* ¥µ¡¼¥ÐÀßÄê¥Þ¡¼¥¸´Ø¿ô */ ==>
- /* ¥µ¡¼¥ÐËèÀßÄ깽¤ÂκîÀ®¥Þ¡¼¥¸ */</li>
+ <dt><code>/* ¥µ¡¼¥ÐÀßÄê¥Þ¡¼¥¸´Ø¿ô */</code></dt>
+ <dd><code>/* ¥µ¡¼¥ÐËèÀßÄ깽¤ÂκîÀ®¥Þ¡¼¥¸ */</code></dd>
- <li>/* ¥³¥Þ¥ó¥É¡¦¥Æ¡¼¥Ö¥ë */ ==> /* ¥³¥Þ¥ó¥É apr_table_t */</li>
+ <dt><code>/* ¥³¥Þ¥ó¥É¡¦¥Æ¡¼¥Ö¥ë */</code></dt>
+ <dd><code>/* ¥³¥Þ¥ó¥É apr_table_t */</code></dd>
- <li>/* ¥Ï¥ó¥É¥é */ ==> /* ¥Ï¥ó¥É¥é */</li>
- </ul>
+ <dt><code>/* ¥Ï¥ó¥É¥é */</code></dt>
+ <dd><code>/* ¥Ï¥ó¥É¥é */</code></dd>
+ </dl>
<p>¸Å¤¤´Ø¿ô¤Î»Ä¤ê¤Î¤â¤Î¤Ï¥Õ¥Ã¥¯¤È¤·¤ÆÅÐÏ¿¤µ¤ì¤ë¤Ù¤¤Ç¤¹¡£
¸½»þÅÀ¤Ç¼¡¤Î¤è¤¦¤Ê¥Õ¥Ã¥¯¡¦¥¹¥Æ¡¼¥¸¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹¡Ä</p>
- <ul style="list-style:none">
- <li>ap_hook_post_config <em>(°ÊÁ°¤Î _init ¥ë¡¼¥Á¥ó¤¬ÅÐÏ¿¤µ¤ì¤ë¤Ù¤¾ì½ê¤Ç¤¹)</em></li>
-
- <li>ap_hook_http_method <em>(¥ê¥¯¥¨¥¹¥È¤«¤é HTTP ¥á¥½¥Ã¥É¤ò¼èÆÀ¤·¤Þ¤¹ (¸ß´¹ÍÑ))</em></li>
-
- <li>ap_hook_open_logs <em>(ÆÃÄê¤Î¥í¥°¤Î¥ª¡¼¥×¥ó)</em></li>
-
- <li>ap_hook_auth_checker <em>(¥ê¥½¡¼¥¹¤¬¸¢¸Â¤òɬÍפȤ¹¤ë¤«¤É¤¦¤«¤Î³Îǧ)</em></li>
-
- <li>ap_hook_access_checker <em>(¥â¥¸¥å¡¼¥ë¸ÇͤÎÀ©Ìó¤Î³Îǧ)</em></li>
-
- <li>ap_hook_check_user_id <em>(¥æ¡¼¥¶ ID ¤È¥Ñ¥¹¥ï¡¼¥É¤Î³Îǧ)</em></li>
+ <dl>
+ <dt><code>ap_hook_post_config</code></dt>
+ <dd>(°ÊÁ°¤Î <code>_init</code> ¥ë¡¼¥Á¥ó¤¬ÅÐÏ¿¤µ¤ì¤ë¤Ù¤¾ì½ê¤Ç¤¹)</dd>
- <li>ap_hook_default_port <em>(¥µ¡¼¥Ð¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Î¼èÆÀ)</em></li>
+ <dt><code>ap_hook_http_method</code></dt>
+ <dd>(¥ê¥¯¥¨¥¹¥È¤«¤é HTTP ¥á¥½¥Ã¥É¤ò¼èÆÀ¤·¤Þ¤¹ (¸ß´¹ÍÑ))</dd>
- <li>ap_hook_pre_connection <em>(½èÍý¤ÎľÁ°¤ËɬÍפʤ³¤È¤ò¼Â¹Ô¡£¤¿¤À¤· accept ľ¸å¤Ë¸Æ¤Ð¤ì¤ë)</em></li>
+ <dt><code>ap_hook_open_logs</code></dt>
+ <dd>(ÆÃÄê¤Î¥í¥°¤Î¥ª¡¼¥×¥ó)</dd>
- <li>ap_hook_process_connection <em>(¥×¥í¥È¥³¥ë¤Î½èÍý)</em></li>
+ <dt><code>ap_hook_auth_checker</code></dt>
+ <dd>(¥ê¥½¡¼¥¹¤¬¸¢¸Â¤òɬÍפȤ¹¤ë¤«¤É¤¦¤«¤Î³Îǧ)</dd>
- <li>ap_hook_child_init <em>(»Ò¥×¥í¥»¥ëµ¯Æ°Ä¾¸å)</em></li>
+ <dt><code>ap_hook_access_checker</code></dt>
+ <dd>(¥â¥¸¥å¡¼¥ë¸ÇͤÎÀ©Ìó¤Î³Îǧ)</dd>
- <li>ap_hook_create_request <em>(??)</em></li>
+ <dt><code>ap_hook_check_user_id</code></dt>
+ <dd>(¥æ¡¼¥¶ ID ¤È¥Ñ¥¹¥ï¡¼¥É¤Î³Îǧ)</dd>
- <li>ap_hook_fixups <em>(±þÅúÆâÍƤÎÀ¸À®¤òÊѹ¹¤¹¤ë¥é¥¹¥È¡¦¥Á¥ã¥ó¥¹)</em></li>
+ <dt><code>ap_hook_default_port</code></dt>
+ <dd>(¥µ¡¼¥Ð¤Î¥Ç¥Õ¥©¥ë¥È¡¦¥Ý¡¼¥È¤Î¼èÆÀ)</dd>
- <li>ap_hook_handler <em>(±þÅúÆâÍƤÎÀ¸À®)</em></li>
+ <dt><code>ap_hook_pre_connection</code></dt>
+ <dd>(½èÍý¤ÎľÁ°¤ËɬÍפʤ³¤È¤ò¼Â¹Ô¡£¤¿¤À¤· accept ľ¸å¤Ë¸Æ¤Ð¤ì¤ë)</dd>
- <li>ap_hook_header_parser <em>(¥â¥¸¥å¡¼¥ë¤Ë¥Ø¥Ã¥À¤Î¾È²ñ¤ò¤µ¤»¤ë¡£¤Û¤È¤ó¤É¤Î¥â¥¸¥å¡¼¥ë¤Ç¤Ï»È¤ï¤ì¤Þ¤»¤ó¡£post_read_request ¤ò»È¤¤¤Þ¤¹)</em></li>
+ <dt><code>ap_hook_process_connection</code></dt>
+ <dd>(¥×¥í¥È¥³¥ë¤Î½èÍý)</dd>
- <li>ap_hook_insert_filter <em>(¥Õ¥£¥ë¥¿¡¦¥Á¥§¥¤¥ó¤Ë¥Õ¥£¥ë¥¿¤òÁÞÆþ)</em></li>
+ <dt><code>ap_hook_child_init</code></dt>
+ <dd>(»Ò¥×¥í¥»¥ëµ¯Æ°Ä¾¸å)</dd>
- <li>ap_hook_log_transaction <em>(¥ê¥¯¥¨¥¹¥È¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤òµÏ¿¤¹¤ë)</em></li>
+ <dt><code>ap_hook_create_request</code></dt>
+ <dd>(??)</dd>
- <li>ap_hook_optional_fn_retrieve <em>(¥ª¥×¥·¥ç¥ó¤È¤·¤ÆÅÐÏ¿¤µ¤ì¤¿´Ø¿ô¤Î¼èÆÀ)</em></li>
+ <dt><code>ap_hook_fixups</code></dt>
+ <dd>(±þÅúÆâÍƤÎÀ¸À®¤òÊѹ¹¤¹¤ë¥é¥¹¥È¡¦¥Á¥ã¥ó¥¹)</dd>
- <li>ap_hook_post_read_request <em>(¥ê¥¯¥¨¥¹¥È¤òÆɤߤ³¤ó¤À¸å¡¢Â¾¤Î¥Õ¥§¡¼¥º¤ÎÁ°¤Ë¸Æ¤Ð¤ì¤ë)</em></li>
+ <dt><code>ap_hook_handler</code></dt>
+ <dd>(±þÅúÆâÍƤÎÀ¸À®)</dd>
- <li>ap_hook_quick_handler <em>(??)</em></li>
+ <dt><code>ap_hook_header_parser</code></dt>
+ <dd>(¥â¥¸¥å¡¼¥ë¤Ë¥Ø¥Ã¥À¤Î¾È²ñ¤ò¤µ¤»¤ë¡£¤Û¤È¤ó¤É¤Î¥â¥¸¥å¡¼¥ë¤Ç¤Ï»È¤ï¤ì¤Þ¤»¤ó¡£post_read_request ¤ò»È¤¤¤Þ¤¹)</dd>
- <li>ap_hook_translate_name <em>(URI ¤ò¥Õ¥¡¥¤¥ë̾¤ËÊÑ´¹¤¹¤ë)</em></li>
+ <dt><code>ap_hook_insert_filter</code></dt>
+ <dd>(¥Õ¥£¥ë¥¿¡¦¥Á¥§¥¤¥ó¤Ë¥Õ¥£¥ë¥¿¤òÁÞÆþ)</dd>
- <li>ap_hook_type_checker <em>(ʸ½ñ·¿¤Î·èÄê¤ÈÀßÄê¡£¤¢¤ë¤¤¤Ï¤½¤ÎÊÒÊý)</em></li>
- </ul>
- <hr />
+ <dt><code>ap_hook_log_transaction</code></dt>
+ <dd>(¥ê¥¯¥¨¥¹¥È¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤òµÏ¿¤¹¤ë)</dd>
- <h3 align="center">Apache HTTP Server Version 2.1</h3>
- <a href="./"><img src="../images/index.gif" alt="Index" /></a>
- <a href="../"><img src="../images/home.gif" alt="Home" /></a>
+ <dt><code>ap_hook_optional_fn_retrieve</code></dt>
+ <dd>(¥ª¥×¥·¥ç¥ó¤È¤·¤ÆÅÐÏ¿¤µ¤ì¤¿´Ø¿ô¤Î¼èÆÀ)</dd>
+ <dt><code>ap_hook_post_read_request</code></dt>
+ <dd>(¥ê¥¯¥¨¥¹¥È¤òÆɤߤ³¤ó¤À¸å¡¢Â¾¤Î¥Õ¥§¡¼¥º¤ÎÁ°¤Ë¸Æ¤Ð¤ì¤ë)</dd>
+ <dt><code>ap_hook_quick_handler</code></dt>
+ <dd>¥ê¥¯¥¨¥¹¥È¤Î½èÍý¤¬»Ï¤Þ¤ëÁ°¤Ë¸Æ¤Ð¤ì¤ë¡£¥¥ã¥Ã¥·¥å¥â¥¸¥å¡¼¥ë¤¬
+ »ÈÍѤ·¤Æ¤¤¤ë</dd>
- </body>
-</html>
+ <dt><code>ap_hook_translate_name</code></dt>
+ <dd>(URI ¤ò¥Õ¥¡¥¤¥ë̾¤ËÊÑ´¹¤¹¤ë)</dd>
+ <dt><code>ap_hook_type_checker</code></dt>
+ <dd>(ʸ½ñ·¿¤Î·èÄê¤ÈÀßÄê¡£¤¢¤ë¤¤¤Ï¤½¤ÎÊÒÊý)</dd>
+ </dl>
+
+</div></div>
+<div class="bottomlang">
+<p><span>Available Languages: </span><a href="../en/developer/modules.html" hreflang="en" rel="alternate" title="English"> en </a> |
+<a href="../ja/developer/modules.html" title="Japanese"> ja </a></p>
+</div><div id="footer">
+<p class="apache">Copyright 1999-2004 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+<p class="menu"><a href="../mod/">¥â¥¸¥å¡¼¥ë</a> | <a href="../mod/directives.html">¥Ç¥£¥ì¥¯¥Æ¥£¥Ö</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">ÍѸì</a> | <a href="../sitemap.html">¥µ¥¤¥È¥Þ¥Ã¥×</a></p></div>
+</body></html>
\ No newline at end of file
--- /dev/null
+<?xml version="1.0" encoding="iso-2022-jp"?>
+<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.en.xsl"?>
+
+<!--
+ Copyright 2003-2004 The Apache Software Foundation
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<manualpage metafile="modules.xml.meta">
+<parentdocument href="./">Developer Documentation</parentdocument>
+
+<title>\e$B%b%8%e!<%k$N\e(B Apache 1.3 \e$B$+$i\e(B Apache 2.0 \e$B$X$N0\?"\e(B</title>
+
+<summary>
+ <p>\e$B$3$NJ8=q$O\e(B <code>mod_mmap_static</code> \e$B%b%8%e!<%k$r\e(B Apache 2.0 \e$BMQ$K0\?"$7$?;~$K\e(B
+ \e$B3X$s$@7P83$r$b$H$K=q$$$?!":G=i$N<j0z$-=q$G$9!#$^$@$^$@40A4$8$c$J$$$7!"\e(B
+ \e$B$R$g$C$H$9$k$H4V0c$C$F$$$kItJ,$b$"$k$+$b$7$l$^$;$s$,!"\e(B
+ \e$B<h$C3]$j$K$O$J$k$G$7$g$&!#\e(B</p>
+</summary>
+
+<section id="easy"><title>\e$B4JC1$JJQ99E@\e(B</title>
+
+ <section id="cleanup"><title>\e$B%/%j!<%s%J%C%W\e(B \e$B%k!<%A%s\e(B</title>
+ <p>\e$B%/%j!<%s%J%C%W%k!<%A%s$O\e(B <code>apr_status_t</code> \e$B7?$G$"$kI,MW$,$"$j$^$9!#\e(B
+ \e$B$=$7$F!"\e(Bapr_status_t \e$B7?$NCM$rJV$5$J$/$F$O$J$j$^$;$s!#\e(B
+ \e$B%/%j!<%s%J%C%WCf$N%(%i!<$rDLCN$9$kI,MW$,$J$1$l$P!"JV$jCM$OIaDL!"\e(B
+ <code>ARP_SUCCESS</code> \e$B$G$9!#$?$H$(%(%i!<$rDLCN$7$?$H$7$F$b!"\e(B
+ \e$B$9$Y$F$N%3!<%I$,$=$NDLCN$r%A%'%C%/$7$?$j!"\e(B
+ \e$B%(%i!<$K1~$8$?F0:n$r$9$k$o$1$G$O$J$$$3$H$K5$$r$D$1$F$/$@$5$$!#\e(B</p>
+ </section>
+
+
+ <section id="init"><title>\e$B=i4|2=%k!<%A%s\e(B</title>
+
+ <p>\e$B=i4|2=%k!<%A%s$O=hM}A4BN$+$i8+$F$7$C$/$j$/$k$h$&$J0UL#$rI=$9$h$&$K!"\e(B
+ \e$BL>A0$,JQ99$5$l$^$7$?!#$G$9$+$i!"\e(B<code>mmap_init</code> \e$B$+$i\e(B <code>mmap_post_config</code>
+ \e$B$N$h$&$K$A$g$C$HJQ99$5$l$^$7$?!#\e(B
+ \e$BEO$5$l$k0z?t$OBgI}$KJQ99$5$l!"<!$N$h$&$K$J$j$^$7$?!#\e(B</p>
+
+ <ul>
+ <li><code>apr_pool_t *p</code></li>
+ <li><code>apr_pool_t *plog</code></li>
+ <li><code>apr_pool_t *ptemp</code></li>
+ <li><code>server_rec *s</code></li>
+ </ul>
+ </section>
+
+ <section id="datatypes"><title>\e$B%G!<%?7?\e(B</title>
+ <p>\e$B%G!<%?7?$N$[$H$s$I$O\e(B <a
+ href="http://apr.apache.org/">APR</a> \e$B$K0\$5$l$^$7$?!#$D$^$j!"\e(B
+ \e$B$$$/$D$+$NL>A0$,A0=R$N$h$&$KJQ99$5$l$F$$$^$9!#\e(B
+ \e$B;\$9$Y$-JQ99E@$N4JC1$J0lMw$r0J2<$K<($7$^$9!#\e(B</p>
+
+ <ul>
+ <li><code>pool</code> becomes <code>apr_pool_t</code></li>
+ <li><code>table</code> becomes <code>apr_table_t</code></li>
+ </ul>
+ </section>
+</section>
+
+<section id="messy"><title>\e$B$b$C$HLq2p$JJQ99E@!D\e(B</title>
+
+ <section id="register-hooks"><title>\e$B%U%C%/$NEPO?\e(B</title>
+ <p>\e$B?7$7$$%"!<%-%F%/%A%c$G$O:n@.$7$?4X?t$r8F$S=P$9$N$K\e(B
+ \e$B0lO"$N%U%C%/$r;HMQ$7$^$9!#$3$N%U%C%/$O!"?7$7$$4X?t\e(B
+ <code>static void register_hooks(void)</code> \e$B$r;H$C$FEPO?$9$k$h$&!"\e(B
+ \e$B%b%8%e!<%k$K=q$-B-$5$J$/$F$O$J$j$^$;$s!#\e(B
+ \e$B$3$N4X?t$O!"$J$K$r$9$Y$-$+0lC6M}2r$7$F$7$^$($P!"\e(B
+ \e$B==J,$K$o$+$j$d$9$$$b$N$G$9!#\e(B
+ \e$B%j%/%(%9%H$N=hM}$N$"$k%9%F!<%8$G8F$S=P$5$J$/$F$O$J$i$J$$\e(B
+ \e$B4X?t$OEPO?$9$kI,MW$,$"$j$^$9!#%O%s%I%i$OEPO?$9$kI,MW$O$"$j$^$;$s!#\e(B
+ \e$B4X?t$rEPO?$G$-$k%U%'!<%:$O$?$/$5$s$"$j$^$9!#\e(B
+ \e$B$=$l$>$l$N%U%'!<%:$G!"4X?t$r8F$S=P$9AjBPE*$J=gHV$O!"\e(B
+ \e$B$+$J$j$NDxEY@)8f$G$-$^$9!#\e(B</p>
+
+ <p>\e$B0J2<$O!"\e(B<code>mod_mmap_static</code> \e$B$KDI2C$7$?%3!<%I$G$9\e(B:</p>
+
+ <example><pre>
+static void register_hooks(void)
+{
+ static const char * const aszPre[]={ "http_core.c",NULL };
+ ap_hook_post_config(mmap_post_config,NULL,NULL,HOOK_MIDDLE);
+ ap_hook_translate_name(mmap_static_xlat,aszPre,NULL,HOOK_LAST);
+};</pre>
+ </example>
+
+ <p>\e$B$3$3$G$O8F$S$@$9$Y$-Fs$D$N4X?t$rEPO?$7$F$$$^$9!#0l$D$O\e(B
+ <code>post_config</code> \e$B%9%F!<%8MQ\e(B (\e$B$[$H$s$I$9$Y$F$N%b%8%e!<%k\e(B
+ \e$B$O$3$l$,I,MW$G$9\e(B) \e$B$G!"$b$&0l$D$O\e(B <code>translate_name</code> \e$B%U%'!<%:MQ$G$9!#\e(B
+ \e$B$=$l$>$l$N4X?t$OL>A0$O0c$&$1$l$I$b7A<0$OF1$8$G$"$k$3$H$KCm0U$7$F$/$@$5$$!#\e(B
+ \e$B$=$l$G$O!"7A<0$O$I$N$h$&$K$J$C$F$$$k$G$7$g$&$+\e(B?</p>
+
+ <example>
+ ap_hook_<var>phase_name</var>(<var>function_name</var>,
+ <var>predecessors</var>, <var>successors</var>, <var>position</var>);
+ </example>
+
+ <p>\e$B;0$D$N0LCV$,Dj5A$5$l$F$$$^$9!D\e(B</p>
+
+ <ul>
+ <li><code>HOOK_FIRST</code></li>
+ <li><code>HOOK_MIDDLE</code></li>
+ <li><code>HOOK_LAST</code></li>
+ </ul>
+
+ <p>\e$B0LCV$rDj5A$9$k$K$O!">e5-$N!V0LCV!W$r;XDj$7!"\e(B
+ \e$B=$>~;R$G$"$k!V@h9T!W$H!V8e9T!W$G<j$r2C$($^$9!#\e(B
+ \e$B!V@h9T!W!V8e9T!W$O!"8F$P$l$k$Y$-4X?t$N%j%9%H$G$9!#\e(B
+ \e$B!V@h9T!W$O4X?t$N<B9TA0$K8F$P$l$k$b$N$G!"\e(B
+ \e$B!V8e9T!W$O<B9T8e$K8F$P$l$k$b$N$G$9!#\e(B</p>
+
+ <p><code>mod_mmap_static</code> \e$B$N>l9g!"\e(B<code>post_config</code>
+ \e$B%9%F!<%8$G$OI,MW$"$j$^$;$s$,!"\e(B
+ <code>mmap_static_xlat</code> \e$B$,\e(B core \e$B%b%8%e!<%k$,L>A0$NJQ49$r<B9T$7$?8e$K\e(B
+ <strong>\e$B8F$P$l$J$1$l$P$J$j$^$;$s\e(B</strong>\e$B!#\e(B
+ \e$B$=$3$G\e(B aszPre \e$B$r;H$C$F\e(B <code>HOOK_LAST</code> \e$B$N=$>~;R$rDj5A$7$F$$$^$9!#\e(B</p>
+ </section>
+
+ <section id="moddef"><title>\e$B%b%8%e!<%k$NDj5A\e(B</title>
+ <p>\e$B%b%8%e!<%k$NDj5A$r:n@.$9$k:]$KCm0U$7$J$1$l$P$J$i$J$$\e(B
+ \e$B%9%F!<%8$N?t$O7c8:$7$F$$$^$9!#8E$$Dj5A$O<!$N$h$&$K$J$C$F$$$^$7$?!#\e(B</p>
+
+ <example><pre>
+module MODULE_VAR_EXPORT <var>module_name</var>_module =
+{
+ STANDARD_MODULE_STUFF,
+ /* initializer */
+ /* dir config creater */
+ /* dir merger --- default is to override */
+ /* server config */
+ /* merge server config */
+ /* command handlers */
+ /* handlers */
+ /* filename translation */
+ /* check_user_id */
+ /* check auth */
+ /* check access */
+ /* type_checker */
+ /* fixups */
+ /* logger */
+ /* header parser */
+ /* child_init */
+ /* child_exit */
+ /* post read-request */
+};</pre>
+ </example>
+
+ <p>\e$B?7$7$$9=B$BN$O$H$C$F$b%7%s%W%k$G$9!D\e(B</p>
+ <example><pre>
+module MODULE_VAR_EXPORT <var>module_name</var>_module =
+{
+ STANDARD20_MODULE_STUFF,
+ /* create per-directory config structures */
+ /* merge per-directory config structures */
+ /* create per-server config structures */
+ /* merge per-server config structures */
+ /* command handlers */
+ /* handlers */
+ /* register hooks */
+};</pre>
+ </example>
+
+ <p>\e$B$3$N$&$A$N$$$/$D$+$O8E$$$b$N$+$i?7$7$$$b$N$KD>@\FI$_BX$($i$l$k$b$N$G!"\e(B
+ \e$B$$$/$D$+$O$=$&$G$O$"$j$^$;$s!#$I$&$9$l$P$$$$$N$+$rMWLs$7$F$_$^$9!#\e(B</p>
+
+ <p>\e$BD>@\FI$_BX$($i$l$k%9%F!<%8\e(B:</p>
+
+ <dl>
+ <dt><code>/* \e$B%G%#%l%/%H%j@_Dj:n@.4X?t\e(B */</code></dt>
+ <dd><code>/* \e$B%G%#%l%/%H%jKh@_Dj9=B$BN:n@.\e(B */</code></dd>
+
+ <dt><code>/* \e$B%5!<%P@_Dj:n@.4X?t\e(B */</code></dt>
+ <dd><code>/* \e$B%5!<%PKh@_Dj9=B$BN:n@.\e(B */</code></dd>
+
+ <dt><code>/* \e$B%G%#%l%/%H%j@_Dj%^!<%84X?t\e(B */</code></dt>
+ <dd><code>/* \e$B%G%#%l%/%H%jKh@_Dj9=B$BN%^!<%8\e(B */</code></dd>
+
+ <dt><code>/* \e$B%5!<%P@_Dj%^!<%84X?t\e(B */</code></dt>
+ <dd><code>/* \e$B%5!<%PKh@_Dj9=B$BN:n@.%^!<%8\e(B */</code></dd>
+
+ <dt><code>/* \e$B%3%^%s%I!&%F!<%V%k\e(B */</code></dt>
+ <dd><code>/* \e$B%3%^%s%I\e(B apr_table_t */</code></dd>
+
+ <dt><code>/* \e$B%O%s%I%i\e(B */</code></dt>
+ <dd><code>/* \e$B%O%s%I%i\e(B */</code></dd>
+ </dl>
+
+ <p>\e$B8E$$4X?t$N;D$j$N$b$N$O%U%C%/$H$7$FEPO?$5$l$k$Y$-$G$9!#\e(B
+ \e$B8=;~E@$G<!$N$h$&$J%U%C%/!&%9%F!<%8$,Dj5A$5$l$F$$$^$9!D\e(B</p>
+
+ <dl>
+ <dt><code>ap_hook_post_config</code></dt>
+ <dd>(\e$B0JA0$N\e(B <code>_init</code> \e$B%k!<%A%s$,EPO?$5$l$k$Y$->l=j$G$9\e(B)</dd>
+
+ <dt><code>ap_hook_http_method</code></dt>
+ <dd>(\e$B%j%/%(%9%H$+$i\e(B HTTP \e$B%a%=%C%I$r<hF@$7$^$9\e(B (\e$B8_49MQ\e(B))</dd>
+
+ <dt><code>ap_hook_open_logs</code></dt>
+ <dd>(\e$BFCDj$N%m%0$N%*!<%W%s\e(B)</dd>
+
+ <dt><code>ap_hook_auth_checker</code></dt>
+ <dd>(\e$B%j%=!<%9$,8"8B$rI,MW$H$9$k$+$I$&$+$N3NG'\e(B)</dd>
+
+ <dt><code>ap_hook_access_checker</code></dt>
+ <dd>(\e$B%b%8%e!<%k8GM-$N@)Ls$N3NG'\e(B)</dd>
+
+ <dt><code>ap_hook_check_user_id</code></dt>
+ <dd>(\e$B%f!<%6\e(B ID \e$B$H%Q%9%o!<%I$N3NG'\e(B)</dd>
+
+ <dt><code>ap_hook_default_port</code></dt>
+ <dd>(\e$B%5!<%P$N%G%U%)%k%H!&%]!<%H$N<hF@\e(B)</dd>
+
+ <dt><code>ap_hook_pre_connection</code></dt>
+ <dd>(\e$B=hM}$ND>A0$KI,MW$J$3$H$r<B9T!#$?$@$7\e(B accept \e$BD>8e$K8F$P$l$k\e(B)</dd>
+
+ <dt><code>ap_hook_process_connection</code></dt>
+ <dd>(\e$B%W%m%H%3%k$N=hM}\e(B)</dd>
+
+ <dt><code>ap_hook_child_init</code></dt>
+ <dd>(\e$B;R%W%m%;%k5/F0D>8e\e(B)</dd>
+
+ <dt><code>ap_hook_create_request</code></dt>
+ <dd>(??)</dd>
+
+ <dt><code>ap_hook_fixups</code></dt>
+ <dd>(\e$B1~EzFbMF$N@8@.$rJQ99$9$k%i%9%H!&%A%c%s%9\e(B)</dd>
+
+ <dt><code>ap_hook_handler</code></dt>
+ <dd>(\e$B1~EzFbMF$N@8@.\e(B)</dd>
+
+ <dt><code>ap_hook_header_parser</code></dt>
+ <dd>(\e$B%b%8%e!<%k$K%X%C%@$N>H2q$r$5$;$k!#$[$H$s$I$N%b%8%e!<%k$G$O;H$o$l$^$;$s!#\e(Bpost_read_request \e$B$r;H$$$^$9\e(B)</dd>
+
+ <dt><code>ap_hook_insert_filter</code></dt>
+ <dd>(\e$B%U%#%k%?!&%A%'%$%s$K%U%#%k%?$rA^F~\e(B)</dd>
+
+ <dt><code>ap_hook_log_transaction</code></dt>
+ <dd>(\e$B%j%/%(%9%H$K$D$$$F$N>pJs$r5-O?$9$k\e(B)</dd>
+
+ <dt><code>ap_hook_optional_fn_retrieve</code></dt>
+ <dd>(\e$B%*%W%7%g%s$H$7$FEPO?$5$l$?4X?t$N<hF@\e(B)</dd>
+
+ <dt><code>ap_hook_post_read_request</code></dt>
+ <dd>(\e$B%j%/%(%9%H$rFI$_$3$s$@8e!"B>$N%U%'!<%:$NA0$K8F$P$l$k\e(B)</dd>
+
+ <dt><code>ap_hook_quick_handler</code></dt>
+ <dd>\e$B%j%/%(%9%H$N=hM}$,;O$^$kA0$K8F$P$l$k!#%-%c%C%7%e%b%8%e!<%k$,\e(B
+ \e$B;HMQ$7$F$$$k\e(B</dd>
+
+ <dt><code>ap_hook_translate_name</code></dt>
+ <dd>(URI \e$B$r%U%!%$%kL>$KJQ49$9$k\e(B)</dd>
+
+ <dt><code>ap_hook_type_checker</code></dt>
+ <dd>(\e$BJ8=q7?$N7hDj$H@_Dj!#$"$k$$$O$=$NJRJ}\e(B)</dd>
+ </dl>
+ </section>
+</section>
+</manualpage>