1 <?xml version="1.0" encoding="EUC-JP"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>ưŪ¶¦Í¥ª¥Ö¥¸¥§¥¯¥È (DSO) ¥µ¥Ý¡¼¥È - Apache HTTP ¥µ¡¼¥Ð</title>
9 <link href="./style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="./style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <link href="./style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" />
12 <link href="./images/favicon.ico" rel="shortcut icon" /></head>
13 <body id="manual-page"><div id="page-header">
14 <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>
15 <p class="apache">Apache HTTP ¥µ¡¼¥Ð ¥Ð¡¼¥¸¥ç¥ó 2.3</p>
16 <img alt="" src="./images/feather.gif" /></div>
17 <div class="up"><a href="./"><img title="<-" alt="<-" src="./images/left.gif" /></a></div>
19 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP ¥µ¡¼¥Ð</a> > <a href="http://httpd.apache.org/docs/">¥É¥¥å¥á¥ó¥Æ¡¼¥·¥ç¥ó</a> > <a href="./">¥Ð¡¼¥¸¥ç¥ó
20 2.3</a></div><div id="page-content"><div id="preamble"><h1>ưŪ¶¦Í¥ª¥Ö¥¸¥§¥¯¥È (DSO) ¥µ¥Ý¡¼¥È</h1>
22 <p><span>Available Languages: </span><a href="./en/dso.html" hreflang="en" rel="alternate" title="English"> en </a> |
23 <a href="./ja/dso.html" title="Japanese"> ja </a> |
24 <a href="./ko/dso.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
27 <p>Apache HTTP ¥µ¡¼¥Ð¤Ï¥â¥¸¥å¡¼¥ë²½¤µ¤ì¤¿¥×¥í¥°¥é¥à¤Ç¡¢
28 ´ÉÍý¼Ô¤¬¥â¥¸¥å¡¼¥ë¤òÁªÂò¤¹¤ë¤³¤È¤Ç¥µ¡¼¥Ð¤ËÁȤ߹þ¤àµ¡Ç½¤òÁª¤Ö¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
29 ¥â¥¸¥å¡¼¥ë¤Ï¥µ¡¼¥Ð¤¬¥Ó¥ë¥É¤µ¤ì¤ë¤È¤¤Ë <code class="program"><a href="./programs/httpd.html">httpd</a></code> ¥Ð¥¤¥Ê¥ê¤Ë
30 ÀÅŪ¤ËÁȤ߹þ¤à¤³¤È¤¬¤Ç¤¤Þ¤¹¡£¤â¤·¤¯¤Ï¡¢<code class="program"><a href="./programs/httpd.html">httpd</a></code> ¥Ð¥¤¥Ê¥ê¤È¤Ï
31 Ê̤˸ºß¤¹¤ëưŪ¶¦Í¥ª¥Ö¥¸¥§¥¯¥È (ÌõÃí: Dynamic Shared Object)
32 (DSO) ¤È¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤¹¤ë¤³¤È¤â
33 ¤Ç¤¤Þ¤¹¡£DSO ¥â¥¸¥å¡¼¥ë¤Ï¥µ¡¼¥Ð¤¬¥Ó¥ë¥É¤µ¤ì¤ë¤È¤¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤¿¤ê¡¢
34 Apache ³ÈÄ¥¥Ä¡¼¥ë (<code class="program"><a href="./programs/apxs.html">apxs</a></code>) ¤ò
35 »È¤Ã¤Æ¸å¤Ç¥³¥ó¥Ñ¥¤¥ë¤·¤ÆÄɲä·¤¿¤ê¤Ç¤¤Þ¤¹¡£</p>
37 <p>¤³¤Îʸ½ñ¤Ï DSO ¥â¥¸¥å¡¼¥ë¤Î»È¤¤Êý¤È¡¢»ÅÁȤߤˤĤ¤¤Æ
40 <div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#implementation">¼ÂÁõ</a></li>
41 <li><img alt="" src="./images/down.gif" /> <a href="#usage">»ÈÍÑË¡¤Î³µÍ×</a></li>
42 <li><img alt="" src="./images/down.gif" /> <a href="#background">ÇØ·Ê</a></li>
43 <li><img alt="" src="./images/down.gif" /> <a href="#advantages">ÍøÅÀ¤È·çÅÀ</a></li>
45 <div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
47 <h2><a name="implementation" id="implementation">¼ÂÁõ</a></h2>
49 <table class="related"><tr><th>´ØÏ¢¥â¥¸¥å¡¼¥ë</th><th>´ØÏ¢¥Ç¥£¥ì¥¯¥Æ¥£¥Ö</th></tr><tr><td><ul><li><code class="module"><a href="./mod/mod_so.html">mod_so</a></code></li></ul></td><td><ul><li><code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code></li></ul></td></tr></table>
51 <p>¸Ä¡¹¤Î Apache ¥â¥¸¥å¡¼¥ë¤ò¥í¡¼¥É¤¹¤ë¤¿¤á¤Î DSO ¥µ¥Ý¡¼¥È¤Ï
52 <code class="module"><a href="./mod/mod_so.c.html">mod_so.c</a></code> ¤È¤¤¤¦¥â¥¸¥å¡¼¥ë¤Îµ¡Ç½¤Ë´ð¤Å¤¤¤Æ¤¤¤Þ¤¹¡£
53 ¤³¤Î¥â¥¸¥å¡¼¥ë ¤Ï Apache ¤Î¥³¥¢¤ËÀÅŪ¤ËÁȤ߹þ¤Þ¤ì¤Æ¤¤¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
54 ¤½¤ì¤Ï <code class="module"><a href="./mod/core.c.html">core.c</a></code> °Ê³°¤Ç¤Ï DSO ¤Ë¤Ç¤¤Ê¤¤Í£°ì¤Î
55 ¥â¥¸¥å¡¼¥ë¤Ç¤¹¡£»ö¼Â¾å¡¢Â¾¤Î¤¹¤Ù¤Æ¤Î Apache ¤Î¥â¥¸¥å¡¼¥ë¤Ï¡¢
56 <a href="install.html">¥¤¥ó¥¹¥È¡¼¥ë¤Îʸ½ñ</a>¤ÇÀâÌÀ¤µ¤ì¤Æ¤¤¤ë¤è¤¦¤Ë¡¢
57 <code class="program"><a href="./programs/configure.html">configure</a></code> ¤Î
58 <code>--enable-<em>module</em>=shared</code> ¥ª¥×¥·¥ç¥ó¤Ç¤½¤ì¤¾¤ì¤ò
59 DSO ¥Ó¥ë¥É¤Ë¤¹¤ë¤³¤È¤Ë¤è¤ê¡¢DSO ¥â¥¸¥å¡¼¥ë¤Ë¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£
60 <code>mod_foo.so</code> ¤Î¤è¤¦¤Ê DSO ¤Ë¥â¥¸¥å¡¼¥ë¤¬¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ì¤Ð¡¢
61 <code>httpd.conf</code> ¥Õ¥¡¥¤¥ëÃæ¤Ç <code class="module"><a href="./mod/mod_so.html">mod_so</a></code> ¤Î
62 <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code>
63 ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò»È¤¦¤³¤È¤Ç¥µ¡¼¥Ð¤Îµ¯Æ°¤äºÆµ¯Æ°»þ¤Ë¤³¤Î¥â¥¸¥å¡¼¥ë¤ò
64 ¥í¡¼¥É¤¹¤ë¤è¤¦¤Ë¤Ç¤¤Þ¤¹¡£</p>
66 <p>Apache ¥â¥¸¥å¡¼¥ëÍѤΠ(Æä˥µ¡¼¥É¥Ñ¡¼¥Æ¥£¥â¥¸¥å¡¼¥ë¤Î) DSO ¥Õ¥¡¥¤¥ë¤Î
67 ºîÀ®¤ò´Êñ¤Ë¤¹¤ë¤¿¤á¤Ë¡¢<code class="program"><a href="./programs/apxs.html">apxs</a></code>
68 (<dfn>APache eXtenSion</dfn>) ¤È¤¤¤¦¿·¤·¤¤¥µ¥Ý¡¼¥È¥×¥í¥°¥é¥à¤¬¤¢¤ê¤Þ¤¹¡£
69 Apache ¤Î¥½¡¼¥¹¥Ä¥ê¡¼¤Î<em>³°¤Ç</em> DSO ¥â¥¸¥å¡¼¥ë¤ò¥Ó¥ë¥É¤¹¤ë¤¿¤á¤Ë
70 »È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¡£È¯ÁÛ¤Ïñ½ã¤Ç¤¹: Apache ¤Î¥¤¥ó¥¹¥È¡¼¥ë»þ¤Î
71 <code class="program"><a href="./programs/configure.html">configure</a></code>¡¢<code>make install</code> ¤Î¤È¤¤Ë Apache ¤Î
72 C ¥Ø¥Ã¥À¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¡¢DSO ¥Ó¥ë¥ÉÍѤΥץé¥Ã¥È¥Õ¥©¡¼¥à°Í¸¤Î
73 ¥³¥ó¥Ñ¥¤¥é¤È¥ê¥ó¥«¤Î¥Õ¥é¥°¤ò <code class="program"><a href="./programs/apxs.html">apxs</a></code> ¥×¥í¥°¥é¥à¤ËÄɲä·¤Þ¤¹¡£
74 ¤³¤ì¤Ë¤è¤ê¡¢¥æ¡¼¥¶¤¬ Apache ¤ÎÇÛÉÛ¥½¡¼¥¹¥Ä¥ê¡¼¤Ê¤·¤Ç¡¢¤µ¤é¤Ë
75 DSO ¥µ¥Ý¡¼¥È¤Î¤¿¤á¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à°Í¸¤Î¥³¥ó¥Ñ¥¤¥é¤ä¥ê¥ó¥«¤Î
76 ¥Õ¥é¥°¤ò¤¤¤¸¤ë¤³¤È¤Ê¤¯ Apache ¤Î¥â¥¸¥å¡¼¥ë¤Î¥½¡¼¥¹¤ò¥³¥ó¥Ñ¥¤¥ë
77 ¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤¹¡£</p>
78 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
80 <h2><a name="usage" id="usage">»ÈÍÑË¡¤Î³µÍ×</a></h2>
82 <p>Apache 2.2 ¤Î DSO µ¡Ç½¤Î³µÎ¬¤òÃΤ뤳¤È¤¬¤Ç¤¤ë¤¿¤á¤Î¡¢
83 û¤¯´Ê·é¤Ê³µÍפǤ¹:</p>
87 <em>ÇÛÉÛ¤µ¤ì¤Æ¤¤¤ë</em> Apache ¥â¥¸¥å¡¼¥ë¡¢²¾¤Ë <code>mod_foo.c</code>
88 ¤È¤·¤Æ¡¢¤½¤ì¤ò DSO <code>mod_foo.so</code> ¤Ë¥Ó¥ë¥É¡¢¥¤¥ó¥¹¥È¡¼¥ë:
90 <div class="example"><p><code>
91 $ ./configure --prefix=/path/to/install --enable-foo=shared<br />
97 <em>¥µ¡¼¥É¥Ñ¡¼¥Æ¥£</em> Apache ¥â¥¸¥å¡¼¥ë¡¢²¾¤Ë <code>mod_foo.c</code>
98 ¤È¤·¤Æ¡¢¤½¤ì¤ò DSO <code>mod_foo.so</code> ¤Ë¥Ó¥ë¥É¡¢¥¤¥ó¥¹¥È¡¼¥ë:
100 <div class="example"><p><code>
101 $ ./configure --add-module=<var>module_type</var>:/path/to/3rdparty/mod_foo.c \<br />
102 <span class="indent">
103 --enable-foo=shared<br />
110 ¶¦Í¥â¥¸¥å¡¼¥ë¤Î <em>¸å¡¹¤Î¥¤¥ó¥¹¥È¡¼¥ë</em> ¤Î¤¿¤á¤Ë
113 <div class="example"><p><code>
114 $ ./configure --enable-so<br />
120 <em>¥µ¡¼¥É¥Ñ¡¼¥Æ¥£</em> Apache ¥â¥¸¥å¡¼¥ë¡¢²¾¤Ë <code>mod_foo.c</code>
121 ¤È¤·¤Æ¡¢¤½¤ì¤ò <code class="program"><a href="./programs/apxs.html">apxs</a></code> ¤ò»È¤Ã¤Æ
122 Apache ¥½¡¼¥¹¥Ä¥ê¡¼¤Î<em>³°¤Ç</em> DSO ¤Ë¥Ó¥ë¥É¡¢¥¤¥ó¥¹¥È¡¼¥ë:
124 <div class="example"><p><code>
125 $ cd /path/to/3rdparty<br />
126 $ apxs -c mod_foo.c<br />
127 $ apxs -i -a -n foo mod_foo.la
132 <p>¤É¤Î¾ì¹ç¤Ë¤ª¤¤¤Æ¤â¡¢¶¦Í¥â¥¸¥å¡¼¥ë¤ò¥³¥ó¥Ñ¥¤¥ë¤·¤¿¸å¤Ç¡¢
133 <code>httpd.conf</code> ¤Ç
134 <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code>
135 ¥Ç¥£¥ì¥¯¥Æ¥£¥Ö¤ò»È¤Ã¤Æ Apache ¤¬¥â¥¸¥å¡¼¥ë¤ò»ÈÍѤ¹¤ë¤è¤¦¤Ë
136 ¤·¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó¡£</p>
137 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
138 <div class="section">
139 <h2><a name="background" id="background">ÇØ·Ê</a></h2>
141 <p>ºÇ¶á¤Î Unix ·Ï¤Î OS ¤Ë¤Ï <em>ưŪ¶¦Í¥ª¥Ö¥¸¥§¥¯¥È</em> (DSO)
142 ¤ÎưŪ¥ê¥ó¥¯/¥í¡¼¥É¤È¤¤¤¦µ¤¤Î¤¤¤¤¿µ¡¹½¤¬
143 ¸ºß¤·¤Þ¤¹¡£¤³¤ì¤Ï¡¢¼Â¹Ô»þ¤Ë¥×¥í¥°¥é¥à¤Î¥¢¥É¥ì¥¹¶õ´Ö¤Ë
144 ¥í¡¼¥É¤Ç¤¤ë¤è¤¦¤ÊÆÃÊ̤ʷÁ¼°¤Ç¥×¥í¥°¥é¥à¤ò¥Ó¥ë¥É¤¹¤ë¤³¤È¤ò
147 <p>¤³¤Î¥í¡¼¥É¤ÏÆó¤Ä¤ÎÊýË¡¤Ç¹Ô¤Ê¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹: ¼Â¹Ô¥×¥í¥°¥é¥à¤¬
148 µ¯Æ°¤µ¤ì¤¿¤È¤¤Ë <code>ld.so</code> ¤È¤¤¤¦¥·¥¹¥Æ¥à¥×¥í¥°¥é¥à
149 ¤Ë¤è¤ê¼«Æ°Åª¤Ë¹Ô¤Ê¤ï¤ì¤ëÊýË¡¤È¡¢¼Â¹Ô¥×¥í¥°¥é¥àÃ椫¤é¡¢¥·¥¹¥Æ¥à¥³¡¼¥ë
150 <code>dlopen()/dlsym()</code> ¤Ë¤è¤ë Unix ¥í¡¼¥À¤Ø¤Î
151 ¥×¥í¥°¥é¥à¥·¥¹¥Æ¥à¤Î¥¤¥ó¥¿¥Õ¥§¡¼¥¹¤ò»È¤Ã¤Æ¼êÆ°¤Ç¹Ô¤Ê¤¦ÊýË¡¤È¤¬
154 <p>ºÇ½é¤ÎÊýË¡¤Ç¤Ï DSO ¤ÏÉáÄ̤Ï<em>¶¦Í¥é¥¤¥Ö¥é¥ê</em>¤ä <em>DSO
155 ¥é¥¤¥Ö¥é¥ê</em> ¤È¸Æ¤Ð¤ì¤Æ¤¤¤Æ¡¢DSO ¤Î̾Á°¤Ï
156 <code>libfoo.so</code> ¤ä <code>libfoo.so.1.2</code> ¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
157 ¤³¤ì¤é¤Ï¥·¥¹¥Æ¥à¥Ç¥£¥ì¥¯¥È¥ê (Ä̾ï <code>/usr/lib</code>) ¤Ë¸ºß¤·¡¢
158 ¼Â¹Ô¥×¥í¥°¥é¥à¤Ø¤Î¥ê¥ó¥¯¤Ï¥Ó¥ë¥É»þ¤Ë <code>-lfoo</code> ¤ò¥ê¥ó¥«¤Ë
159 »ØÄꤹ¤ë¤³¤È¤Ç³ÎΩ¤µ¤ì¤Þ¤¹¡£¤³¤ì¤Ë¤è¤ê¥é¥¤¥Ö¥é¥ê¤Ø¤Î»²¾È¤¬¼Â¹Ô¥×¥í¥°¥é¥à¤Î
160 ¥Õ¥¡¥¤¥ë¤Ë½ñ¤¹þ¤Þ¤ì¤Æ¡¢µ¯Æ°»þ¤Ë Unix ¤Î¥í¡¼¥À¤¬ <code>/usr/lib</code> ¤ä¡¢
161 ¥ê¥ó¥«¤Î <code>-R</code> ¤Î¤è¤¦¤Ê¥ª¥×¥·¥ç¥ó¤Ë¤è¤ê¥Ï¡¼¥É¥³¡¼¥É¤µ¤ì¤¿¥Ñ¥¹¡¢
162 ´Ä¶ÊÑ¿ô <code>LD_LIBRARY_PATH</code> ¤Ë¤è¤êÀßÄꤵ¤ì¤¿¥Ñ¥¹¡¢¤ÎÃ椫¤é
163 <code>libfoo.so</code> ¤Î¾ì½ê¤ò¸«¤Ä¤±¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£¤½¤ì¤«¤é¡¢
164 ¼Â¹Ô¥×¥í¥°¥é¥àÃæ¤Î (¤Þ¤À̤²ò·è¤Î) ¥·¥ó¥Ü¥ë¤ò DSO ¤Ë¤¢¤ë¥·¥ó¥Ü¥ë¤Ç
167 <p>ÉáÄÌ¤Ï¼Â¹Ô¥×¥í¥°¥é¥àÃæ¤Î¥·¥ó¥Ü¥ë¤Ï DSO ¤«¤é¤Ï»²¾È¤µ¤ì¤Þ¤»¤ó
168 (DSO ¤Ï°ìÈÌŪ¤Ê¥³¡¼¥É¤Ë¤è¤ëºÆÍøÍѲÄǽ¤Ê¥é¥¤¥Ö¥é¥ê¤Ç¤¹¤Î¤Ç)¡£
169 ¤Ç¤¹¤«¤é¡¢¤µ¤é¤Ê¤ë¥·¥ó¥Ü¥ë¤Î²ò·è¤ÏɬÍפ¢¤ê¤Þ¤»¤ó¡£
170 ¥·¥ó¥Ü¥ë¤Ï Unix ¥í¡¼¥À¤Ë¤è¤ê´°Á´¤Ê²ò·è¤¬¹Ô¤Ê¤ï¤ì¤Þ¤¹¤Î¤Ç¡¢¼Â¹Ô¥Õ¥¡¥¤¥ë¼«¿È¤Ï
171 ²¿¤â¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤»¤ó¡£(¼ÂºÝ¤Î¤È¤³¤í¡¢ÀÅŪ¤Ç¤Ê¤¤ÊýË¡¤Ç¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤ë
172 ¤¹¤Ù¤Æ¤Î¼Â¹Ô¥×¥í¥°¥é¥à¤ËÁȤ߹þ¤Þ¤ì¤Æ¤¤¤ë³«»ÏÍѤΥ³¡¼¥É¤Î°ìÉô¤Ë
173 <code>ld.so</code> ¤òµ¯Æ°¤¹¤ë¥³¡¼¥É¤¬´Þ¤Þ¤ì¤Æ¤¤¤Þ¤¹)¡£¤è¤¯»È¤ï¤ì¤ë
174 ¥é¥¤¥Ö¥é¥ê¤ÎưŪ¥í¡¼¥É¤ÎÍøÅÀ¤ÏÌÀ¤é¤«¤Ç¤¹¡£¥é¥¤¥Ö¥é¥ê¤Î¥³¡¼¥É¤Ï
175 ¥·¥¹¥Æ¥à¥é¥¤¥Ö¥é¥ê¤Ë <code>libc.so</code> ¤Î¤è¤¦¤Ë¤·¤Æ°ìÅÙÊݸ¤¹¤ë¤À¤±¤Ç¤è¤¯¡¢
176 ¥×¥í¥°¥é¥à¤Î¤¿¤á¤ËɬÍפʥǥ£¥¹¥¯¤ÎÎΰè¤òÀáÌ󤹤뤳¤È¤¬¤Ç¤¤Þ¤¹¡£</p>
178 <p>Æó¤Ä¤á¤ÎÊýË¡¤Ç¤Ï DSO ¤ÏÉáÄ̤Ï<em>¶¦Í¥ª¥Ö¥¸¥§¥¯¥È</em>¤ä
179 <em>DSO ¥Õ¥¡¥¤¥ë</em>¤È¸Æ¤Ð¤ì¤Æ¤¤¤Æ¡¢Ç¤°Õ¤Î³ÈÄ¥»Ò¤òÉÕ¤±¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹
180 (¤¿¤À¤·¡¢É¸½àŪ¤Ê̾Á°¤Ï <code>foo.so</code> ¤Ç¤¹)¡£
181 ¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ÏÄ̾ï¤Ï¥×¥í¥°¥é¥àÀìÍѤΥǥ£¥ì¥¯¥È¥ê¤ËÃÖ¤«¤ì¡¢
182 ¤³¤ì¤é¤ò»È¤¦¼Â¹Ô¥×¥í¥°¥é¥à¤Ø¤Î¥ê¥ó¥¯¤Ï¼«Æ°Åª¤Ë¤Ï¤µ¤ì¤Þ¤»¤ó¡£
183 ¤Ç¤¹¤Î¤Ç¡¢¼Â¹Ô¥×¥í¥°¥é¥à¤Ï <code>dlopen()</code> ¤ò»È¤Ã¤Æ
184 ¼Â¹Ô»þ¤Ë¼êÆ°¤Ç DSO ¤ò¥×¥í¥°¥é¥à¤Î¥¢¥É¥ì¥¹¶õ´Ö¤Ë¥í¡¼¥É¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
185 ¤³¤Î»þÅÀ¤Ç¤Ï¼Â¹Ô¥×¥í¥°¥é¥à¤ËÂФ·¤Æ DSO ¤Î¥·¥ó¥Ü¥ë¤Î²ò·è¤Ï¹Ô¤Ê¤ï¤ì¤Þ¤»¤ó¡£
186 ¤·¤«¤·¡¢¤½¤ÎÂå¤ï¤ê¤Ë Unix ¤Î¥í¡¼¥À¤¬ DSO ¤Î (¤Þ¤À̤²ò·è¤Î) ¥·¥ó¥Ü¥ë¤ò
187 ¼Â¹Ô¥×¥í¥°¥é¥à¤Ë¤è¤ê¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤¿¥·¥ó¥Ü¥ë¤È´û¤Ë¥í¡¼¥É¤µ¤ì¤¿
188 DSO ¥é¥¤¥Ö¥é¥ê¤Ë¤è¤ê¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤¿¥·¥ó¥Ü¥ë (Æäˡ¢¤É¤³¤Ë¤Ç¤â¤¢¤ë
189 <code>libc.so</code> ¤Î¤¹¤Ù¤Æ¤Î¥·¥ó¥Ü¥ë) ¤Ç¼«Æ°Åª¤Ë²ò·è¤·¤Þ¤¹¡£
190 ¤³¤¦¤¹¤ë¤³¤È¤Ç¡¢DSO ¤ÏºÇ½é¤«¤éÀÅŪ¤Ë¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤¿¤«¤Î¤è¤¦¤Ë¡¢
191 ¼Â¹Ô¥×¥í¥°¥é¥à¤Î¥·¥ó¥Ü¥ë¤òÃΤ뤳¤È¤¬¤Ç¤¤Þ¤¹¡£</p>
193 <p>ºÇ¸å¤Ë¡¢DSO ¤Î API ¤òÍøÅÀ¤òÀ¸¤«¤¹¤¿¤á¤Ë¡¢¥×¥í¥°¥é¥à¤Ï
194 ¸å¤Ç¥Ç¥£¥¹¥Ñ¥Ã¥Á¥Æ¡¼¥Ö¥ë<em>¤Ê¤É</em>¤Ç¥·¥ó¥Ü¥ë¤ò»È¤¦¤³¤È¤¬¤Ç¤¤ë¤è¤¦¤Ë¡¢
195 <code>dlsym()</code> ¤ò»È¤Ã¤Æ¤¤¤¯¤Ä¤«¤Î¥·¥ó¥Ü¥ë¤ò²ò·è¤·¤Þ¤¹¡£
196 ¤¹¤Ê¤ï¤Á: ¼Â¹Ô¥×¥í¥°¥é¥à¤ÏɬÍפʤ¹¤Ù¤Æ¤Î¥·¥ó¥Ü¥ë¤ò¼êÆ°¤Ç²ò·è¤·¤Ê¤±¤ì¤Ð
197 ¤Ê¤ê¤Þ¤»¤ó¡£¤³¤Îµ¡¹½¤ÎÍøÅÀ¤Ï¥×¥í¥°¥é¥à¤Î¥ª¥×¥·¥ç¥Ê¥ë¤ÊÉôʬ¤Ï
198 ɬÍפˤʤë¤Þ¤Ç¥í¡¼¥É¤¹¤ëɬÍפ¬¤Ê¤¤ (¤À¤«¤é¥á¥â¥ê¤â¾ÃÈñ¤·¤Ê¤¤)
199 ¤³¤È¤Ç¤¹¡£É¬Íפʤé¤Ð¡¢´ðËÜ¥×¥í¥°¥é¥à¤Îµ¡Ç½¤ò³ÈÄ¥¤¹¤ë¤¿¤á¤Ë
200 ¤³¤ì¤é¤ÎÉôʬ¤òưŪ¤Ë¥í¡¼¥É¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£</p>
202 <p>¤³¤Î DSO µ¡¹½¤Ï´Êñ¤Ê¤è¤¦¤Ë¸«¤¨¤Þ¤¹¤¬¡¢¾¯¤Ê¤¯¤È¤â°ì¤ÄÆñ¤·¤¤ÅÀ¤¬
203 ¤¢¤ê¤Þ¤¹: ¥×¥í¥°¥é¥à¤ò³ÈÄ¥¤¹¤ë¤¿¤á¤Ë DSO ¤ò»È¤Ã¤Æ¤¤¤ë¤È¤¤Ë¡¢
204 DSO ¤¬¼Â¹Ô¥×¥í¥°¥é¥à¤«¤é¥·¥ó¥Ü¥ë¤ò²ò·è¤¹¤ëÅÀ¤Ç¤¹ (ÆóÈÖÌܤÎÊýË¡)¡£
205 ¤³¤ì¤Ï¤Ê¤¼¤Ç¤·¤ç¤¦¤«¡£¤½¤ì¤Ï¡¢DSO ¤Î¥·¥ó¥Ü¥ë¤ò¼Â¹Ô¥×¥í¥°¥é¥à¤Î
206 ¥·¥ó¥Ü¥ë¤«¤é¡ÖµÕ²ò·è¡×¤¹¤ë¤È¤¤¤¦¤Î¤Ï¥é¥¤¥Ö¥é¥ê¤ÎÀß·×
207 (¥é¥¤¥Ö¥é¥ê¤Ï¤½¤ì¤ò»ÈÍѤ¹¤ë¥×¥í¥°¥é¥à¤Î¤³¤È¤Ï²¿¤â
208 ÃΤé¤Ê¤¤) ¤ËÈ¿¤·¤Æ¤¤¤Æ¡¢¤³¤Îµ¡Ç½¤Ï¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë
209 ¤¢¤ë¤ï¤±¤Ç¤Ï¤Ê¤¯¡¢É¸½à²½¤â¤µ¤ì¤Æ¤¤¤Ê¤¤¤«¤é¤Ç¤¹¡£
210 ¼ÂºÝ¤Ë¤Ï¼Â¹Ô¥×¥í¥°¥é¥à¤Î¥°¥í¡¼¥Ð¥ë¤Ê¥·¥ó¥Ü¥ë¤ÏºÆ¥¨¥¯¥¹¥Ý¡¼¥È¤µ¤ì¤ë¤³¤È¤Ï
211 ¤¢¤Þ¤ê¤Ê¤¯¡¢DSO ¤«¤é»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤»¤ó¡£¥ê¥ó¥«¤Ë¥°¥í¡¼¥Ð¥ë¥·¥ó¥Ü¥ë¤¹¤Ù¤Æ¤ò
212 ¥¨¥¯¥¹¥Ý¡¼¥È¤¹¤ë¤è¤¦¤Ë¤µ¤»¤ëÊýË¡¤ò¸«¤Ä¤±¤ë¤³¤È¤¬¡¢¼Â¹Ô»þ¤Ë¥×¥í¥°¥é¥à¤ò
213 ³ÈÄ¥¤¹¤ë¤¿¤á¤Ë DSO ¤ò»È¤¦¤È¤¤Î°ìÈÖ¤ÎÌäÂê¤Ç¤¹¡£</p>
215 <p>¶¦Í¥é¥¤¥Ö¥é¥ê¤Î¥¢¥×¥í¡¼¥Á¤¬ÉáÄ̤ÎÊýË¡¤Ç¤¹¡£DSO µ¡¹½¤Ï¤½¤Î¤¿¤á¤Ë
216 À߷פµ¤ì¤¿¤â¤Î¤Ç¤¹¤«¤é¡£¤·¤¿¤¬¤Ã¤Æ¡¢¤½¤ÎÊýË¡¤Ï¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤¬
217 Ä󶡤¹¤ë¤Û¤È¤ó¤É¤¹¤Ù¤Æ¤Î¼ïÎà¤Î¥é¥¤¥Ö¥é¥ê¤Ç»È¤ï¤ì¤Æ¤¤¤Þ¤¹¡£
218 °ìÊý¡¢¥×¥í¥°¥é¥à¤Î³ÈÄ¥¤Î¤¿¤á¤Ë¶¦Í¥ª¥Ö¥¸¥§¥¯¥È¤ò»ÈÍѤ¹¤ë¡¢¤È¤¤¤¦Êý¤Ï
219 ¤¢¤Þ¤ê»È¤ï¤ì¤Æ¤¤¤Þ¤»¤ó¡£</p>
221 <p>1998 ǯ¤Î»þÅÀ¤Ç¡¢¼Â¹Ô»þ¤Ë¼ÂºÝ¤Ëµ¡Ç½³ÈÄ¥¤Î¤¿¤á¤Ë DSO µ¡¹½¤ò»È¤Ã¤Æ¤¤¤ë
222 ¥½¥Õ¥È¥¦¥§¥¢¥Ñ¥Ã¥±¡¼¥¸¤Ï¾¯¤·¤À¤±¤Ç¤·¤¿: Perl 5 (XS µ¡¹½¤È DnaLoader ¥â¥¸¥å¡¼¥ë
223 ¤Ë¤è¤ë¤â¤Î)¡¢Netscape ¥µ¡¼¥Ð<em>¤Ê¤É</em>¤Ç¤¹¡£Apache ¤Ï¤¹¤Ç¤Ë
224 ¥â¥¸¥å¡¼¥ë¤Î³µÇ°¤ò»È¤Ã¤Æµ¡Ç½³ÈÄ¥¤ò¤·¤Æ¤¤¤Æ¡¢ÆâÉôŪ¤Ë¥Ç¥£¥¹¥Ñ¥Ã¥Á¥ê¥¹¥È¤Ë
225 ´ð¤Å¤¤¤¿³°Éô¥â¥¸¥å¡¼¥ë¤Î Apache ¥³¥¢µ¡Ç½¤Ø¤Î¥ê¥ó¥¯¤ò¹Ô¤Ê¤Ã¤Æ¤¤¤Þ¤·¤¿¤Î¤Ç¡¢
226 ¥Ð¡¼¥¸¥ç¥ó 1.3 ¤«¤é¡¢Apache ¤â DSO µ¡¹½¤ò»È¤¦Ãç´Ö¤Ë¤Ê¤ê¤Þ¤·¤¿¡£
227 Apache ¤Ï¼Â¹Ô»þ¤Ë DSO ¤ò»È¤Ã¤Æ¥â¥¸¥å¡¼¥ë¤ò¥í¡¼¥É¤¹¤ë¤è¤¦¤Ë¤¹¤Ç¤Ë
228 ±¿Ì¿ÉÕ¤±¤é¤ì¤Æ¤¤¤¿¤Î¤Ç¤¹¡£</p>
229 </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
230 <div class="section">
231 <h2><a name="advantages" id="advantages">ÍøÅÀ¤È·çÅÀ</a></h2>
233 <p>¾åµ¤Î DSO ¤Ë´ð¤Å¤¤¤¿µ¡Ç½¤Ï°Ê²¼¤ÎÍøÅÀ¤¬¤¢¤ê¤Þ¤¹:</p>
236 <li>¼ÂºÝ¤Î¥µ¡¼¥Ð¥×¥í¥»¥¹¤òÁȤßΩ¤Æ¤ë¤¿¤á¤Ë¡¢
237 ¥Ó¥ë¥É»þ¤Ë <code>configure</code> ¤Î¥ª¥×¥·¥ç¥ó¤ò»È¤¦Âå¤ï¤ê¤Ë
238 ¼Â¹Ô»þ¤Ë <code>httpd.conf</code> ¤ÎÀßÄêÍÑ¥³¥Þ¥ó¥É
239 <code class="directive"><a href="./mod/mod_so.html#loadmodule">LoadModule</a></code>
240 ¤ò»È¤¦¤³¤È¤¬¤Ç¤¤Þ¤¹¤Î¤Ç¡¢¥µ¡¼¥Ð¥Ñ¥Ã¥±¡¼¥¸¤Î½ÀÆðÀ¤¬¹â¤Þ¤ê¤Þ¤·¤¿¡£
241 ¤¿¤È¤¨¤Ð¡¢°ì¤Ä¤Î Apache ¤Î¥¤¥ó¥¹¥È¡¼¥ë¤«¤é
242 °ã¤¦¹½À®¤Î¥µ¡¼¥Ð (ɸ½àÈÇ¤È SSL ÈÇ¡¢ºÇ¾®¹½À®¤È³ÈÄ¥ÈÇ [mod_perl, PHP3]
243 <em>¤Ê¤É</em>) ¤ò¼Â¹Ô¤¹¤ë¤³¤È¤¬¤Ç¤¤Þ¤¹¡£</li>
245 <li>¥¤¥ó¥¹¥È¡¼¥ë¤Î¸å¤Ç¤¢¤Ã¤Æ¤â¡¢¥µ¡¼¥Ð¤Î¥Ñ¥Ã¥±¡¼¥¸¤ò¥µ¡¼¥É¥Ñ¡¼¥Æ¥£
246 ¥â¥¸¥å¡¼¥ë¤Ç´Êñ¤Ë³ÈÄ¥¤Ç¤¤ë¤è¤¦¤Ë¤Ê¤ê¤Þ¤·¤¿¡£¤³¤ì¤Ï¡¢Apache ¥³¥¢
247 ¥Ñ¥Ã¥±¡¼¥¸¤È¡¢PHP3, mod_perl, mod_fastcgi <em>¤Ê¤É</em> ¤ÎÄɲäÎ
248 ¥Ñ¥Ã¥±¡¼¥¸¤òºîÀ®¤Ç¤¤ë¤Î¤Ç¡¢¾¯¤Ê¤¯¤È¤â¥Ù¥ó¥À¤Î¥Ñ¥Ã¥±¡¼¥¸´ÉÍý¼Ô¤Ë¤È¤Ã¤Æ
249 Â礤ÊÍøÅÀ¤¬¤¢¤ê¤Þ¤¹¡£</li>
251 <li>Apache ¥â¥¸¥å¡¼¥ë¤Î³«È¯¤¬´Êñ¤Ë¤Ê¤ê¤Þ¤¹¡£
252 ¤³¤ì¤Ï DSO ¤È <code class="program"><a href="./programs/apxs.html">apxs</a></code> ¤ÎÁȤ߹ç¤ï¤»¤Ë¤è¤ê¡¢Apache ¥½¡¼¥¹¥Ä¥ê¡¼¤Î
253 ³°¤Çºî¶È¤Ç¤¡¢³«È¯Ãæ¤Î¥â¥¸¥å¡¼¥ë¤Î¿·¤·¤¤¥Ð¡¼¥¸¥ç¥ó¤ò
254 ¼Â¹ÔÃæ¤Î Apache ¥µ¡¼¥Ð¤ËÁȤ߹þ¤à¤¿¤á¤Ë <code>apxs -i</code> ¤È
255 <code>apachectl restart</code> ¤ò¹Ô¤Ê¤¦¤À¤±¤ÇÎɤ¯¤Ê¤ë¤«¤é¤Ç¤¹¡£</li>
258 <p>DSO ¤Ë¤Ï°Ê²¼¤Î·çÅÀ¤¬¤¢¤ê¤Þ¤¹:</p>
261 <li>¤¹¤Ù¤Æ¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤¬¥×¥í¥°¥é¥à¤Î¥¢¥É¥ì¥¹¶õ´Ö¤Ë
262 ¥³¡¼¥É¤òưŪ¥í¡¼¥É¤¹¤ë¤³¤È¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤ï¤Ç¤Ï¤Ê¤¤¤Î¤Ç¡¢
263 ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ¤Ï DSO µ¡¹½¤Ï»È¤¨¤Þ¤»¤ó¡£</li>
265 <li>Unix ¤Î¥í¡¼¥À¤¬¥·¥ó¥Ü¥ë¤Î²ò·è¤ò¤¹¤ëɬÍפ¬¤Ç¤¤¿¤Î¤Ç¡¢
266 ¤½¤Î¥ª¡¼¥Ð¥Ø¥Ã¥É¤Ë¤è¤ê¥µ¡¼¥Ð¤Îµ¯Æ°»þ´Ö¤¬Ìó 20% ÃÙ¤¯¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£</li>
268 <li>°ÌÃÖÈó°Í¸¥³¡¼¥É (PIC) (ÌõÃí position independent code) ¤Ï
269 ÁêÂÐ¥¢¥É¥ì¥¹¤Î¤¿¤á¤ËÊ£»¨¤Ê¥¢¥»¥ó¥Ö¥é¤Î¥È¥ê¥Ã¥¯¤¬É¬Íפʤ³¤È¤¬¤¢¤ê¡¢
270 ¤½¤ì¤Ïɬ¤º¤·¤âÀäÂÐ¥¢¥É¥ì¥¹¤ÈƱ¤¸¤¯¤é¤¤¤Î®ÅÙ¤¬¤Ç¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤Î¤Ç¡¢
271 ¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤è¤Ã¤Æ¤Ï¥µ¡¼¥Ð¤Î¼Â¹Ô®ÅÙ¤¬Ìó 5% ÃÙ¤¯¤Ê¤ê¤Þ¤¹¡£</li>
273 <li>DSO ¥â¥¸¥å¡¼¥ë¤Ï¤¹¤Ù¤Æ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¾¤Î DSO ¤Ë´ð¤Å¤¤¤¿
274 ¥é¥¤¥Ö¥é¥ê¤ËÂФ·¤Æ¥ê¥ó¥¯¤Ç¤¤ë (<code>ld -lfoo</code>)
275 ¤È¤¤¤¦¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤Î¤Ç (¤¿¤È¤¨¤Ð¡¢a.out ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï
276 ¤³¤Îµ¡Ç½¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¢ELF ¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ë¤Ï¤¢¤ê¤Þ¤¹)¡¢
277 ¤¹¤Ù¤Æ¤Î¼ïÎà¤Î¥â¥¸¥å¡¼¥ë¤Ë DSO µ¡¹½¤ò»È¤¨¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡£
278 ¸À¤¤´¹¤¨¤ë¤È¡¢DSO ¥Õ¥¡¥¤¥ë¤È¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤¿¥â¥¸¥å¡¼¥ë¤Î
280 Apache ¤Î¥³¥¢¤Î¥·¥ó¥Ü¥ë¡¢C ¥é¥¤¥Ö¥é¥ê (<code>libc</code>) ¤È
281 Apache ¥³¥¢¤¬»È¤Ã¤Æ¤¤¤ë¾¤Î¤¹¤Ù¤Æ¤ÎÀÅŪ¤Ê¥é¥¤¥Ö¥é¥ê¤ÈưŪ¥é¥¤¥Ö¥é¥ê¤Î
282 ¥·¥ó¥Ü¥ë¡¢PIC ¤Ë¤è¤ëÀÅŪ¤Ê¥é¥¤¥Ö¥é¥ê (<code>libfoo.a</code>) ¤Î
283 ¥·¥ó¥Ü¥ë¤Î¤ß¤ËÀ©¸Â¤µ¤ì¤Þ¤¹¡£¤½¤Î¾¤Î¥³¡¼¥É¤ò»È¤¦ÊýË¡¤Ï¡¢
284 Apache ¥³¥¢¼«¿È¤¬¤¹¤Ç¤Ë¤½¤Î¥³¡¼¥É¤Ø¤Î»²¾È¤¬¤¢¤ë¤è¤¦¤Ë¤¹¤ë¤«¡¢
285 <code>dlopen ()</code> ¤ò»È¤Ã¤Æ¥³¡¼¥É¤ò¼«Ê¬¼«¿È¤Ç¥í¡¼¥É¤¹¤ë¤«¤Î
286 ¤É¤Á¤é¤«¤·¤«¤¢¤ê¤Þ¤»¤ó¡£</li>
290 <div class="bottomlang">
291 <p><span>Available Languages: </span><a href="./en/dso.html" hreflang="en" rel="alternate" title="English"> en </a> |
292 <a href="./ja/dso.html" title="Japanese"> ja </a> |
293 <a href="./ko/dso.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
294 </div><div id="footer">
295 <p class="apache">Copyright 2007 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>
296 <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>