Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
<?xml version="1.0" encoding="EUC-KR"?>
<!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="ko" xml:lang="ko"><head>
<meta content="text/html; charset=EUC-KR" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>mod_example_hooks - 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" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body>
<div id="page-header">
<p class="menu"><a href="../mod/">모듈</a> | <a href="../mod/directives.html">지시어들</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">용어</a> | <a href="../sitemap.html">사이트맵</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="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.4</a> > <a href="./">모듈</a></div>
<div id="page-content">
<div id="preamble"><h1>아파치 모듈 mod_example_hooks</h1>
<div class="toplang">
<p><span>가능한 언어: </span><a href="../en/mod/mod_example_hooks.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_example_hooks.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="../ko/mod/mod_example_hooks.html" title="Korean"> ko </a></p>
</div>
<div class="outofdate">이 문서는 최신판 번역이 아닙니다.
최근에 변경된 내용은 영어 문서를 참고하세요.</div>
<table class="module"><tr><th><a href="module-dict.html#Description">설명:</a></th><td>아파치 모듈 API를 설명한다</td></tr>
<tr><th><a href="module-dict.html#Status">상태:</a></th><td>Experimental</td></tr>
<tr><th><a href="module-dict.html#ModuleIdentifier">모듈명:</a></th><td>example_hooks_module</td></tr>
<tr><th><a href="module-dict.html#SourceFile">소스파일:</a></th><td>mod_example_hooks.c</td></tr></table>
<h3>요약</h3>
<p>아파치 배포본 <code>modules/examples</code> 디렉토리에
있는 파일들은 아파치 API를 사용하여 모듈을 작성하려는 사람들을
돕기위한 예제다.</p>
<p><code>mod_example_hooks.c</code>는 모든 콜백(callback) 구조와
호출 문법을 설명하는 파일이다. 당신은 모듈에 이 모든 콜백을
구현할 필요가 없다. 사실 정반대다!</p>
<p>example 모듈은 실제로 동작하는 모듈이다. 이 모듈을 서버에
연결하고 특정 위치에 "example-hooks-handler" 핸들러를 할당하여
그곳을 브라우징하면 example 모듈의 여러 콜백을 확인할 수
있다.</p>
</div>
<div id="quickview"><a href="https://www.apache.org/foundation/contributing.html" class="badge"><img src="https://www.apache.org/images/SupportApache-small.png" alt="Support Apache!" /></a><h3>주제</h3>
<ul id="topics">
<li><img alt="" src="../images/down.gif" /> <a href="#compiling">example 모듈 컴파일하기</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#using"><code>mod_example_hooks</code> 모듈 사용하기</a></li>
</ul><h3 class="directives">지시어들</h3>
<ul id="toc">
<li><img alt="" src="../images/down.gif" /> <a href="#example">Example</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__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_example_hooks">Known issues</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_example_hooks">Report a bug</a></li></ul><h3>참고</h3>
<ul class="seealso">
<li><a href="#comments_section">Comments</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="compiling" id="compiling">example 모듈 컴파일하기</a></h2>
<p>서버에 example 모듈을 포함하려면 다음 과정을 거친다:</p>
<ol>
<li>
<code>--enable-example-hooks</code> 옵션과 함께
<code>configure</code>를 실행한다.</li>
<li>서버를 컴파일한다 ("<code>make</code>"를 실행한다).</li>
</ol>
<p>자신이 만든 모듈을 추가하려면:</p>
<ol class="up-A">
<li><code>cp modules/examples/mod_example_hooks.c
modules/new_module/<em>mod_myexample.c</em></code></li>
<li>파일을 수정한다.</li>
<li><code>modules/new_module/config.m4</code> 파일을 만든다.
<ol>
<li><code>APACHE_MODPATH_INIT(new_module)</code>을
추가한다.</li>
<li><code>modules/examples/config.m4</code> 파일에서
"example_hooks"이 있는 APACHE_MODULE 줄을 복사해온다.</li>
<li>첫번째 아규먼트 "example_hooks"을 <em>myexample</em>로
변경한다.</li>
<li>두번째 아규먼트 자리에 자신이 만든 모듈에 대한
간단한 설명을 적는다. <code>configure --help</code>를
실행하면 여기에 기록한 설명을 보여준다.</li>
<li>모듈을 컴파일할때 특별한 C 컴파일러 옵션, 링커
옵션, 라이브러리가 필요하면 각각 CFLAGS, LDFLAGS,
LIBS에 추가한다. modules 디렉토리에 있는 다른
<code>config.m4</code> 파일들을 참고하라.</li>
<li><code>APACHE_MODPATH_FINISH</code>를 추가한다.</li>
</ol>
</li>
<li><code>module/new_module/Makefile.in</code> 파일을
만든다. 모듈을 컴파일하는데 특별한 명령어가 필요없다면,
파일에 <code>include $(top_srcdir)/build/special.mk</code>만
있어도 된다.</li>
<li>최상위 디렉토리에서 ./buildconf 를 실행한다.</li>
<li>--enable-myexample 옵션을 사용하여 서버를 컴파일한다</li>
</ol>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="using" id="using"><code>mod_example_hooks</code> 모듈 사용하기</a></h2>
<p>example 모듈을 사용하려면 <code>httpd.conf</code> 파일에
다음과 같은 설정을 추가하라:</p>
<div class="example"><p><code>
<Location /example-hooks-info><br />
SetHandler example-hooks-handler<br />
</Location>
</code></p></div>
<p>아니면 <a href="core.html#accessfilename"><code>.htaccess</code></a>
파일에 다음과 같은 내용을 추가하고, 그 위치에서 "test.example"
같은 파일을 요청하라:</p>
<div class="example"><p><code>
AddHandler example-hooks-handler .example
</code></p></div>
<p>서버를 재시작한 후 이 위치를 브라우징하면 앞에서 말한
내용을 보게될 것이다.</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="Example" id="Example">Example</a> <a name="example" id="example">지시어</a></h2>
<table class="directive">
<tr><th><a href="directive-dict.html#Description">설명:</a></th><td>아파치 모듈 API를 설명하기위한 예제 지시어</td></tr>
<tr><th><a href="directive-dict.html#Syntax">문법:</a></th><td><code>Example</code></td></tr>
<tr><th><a href="directive-dict.html#Context">사용장소:</a></th><td>주서버설정, 가상호스트, directory, .htaccess</td></tr>
<tr><th><a href="directive-dict.html#Status">상태:</a></th><td>Experimental</td></tr>
<tr><th><a href="directive-dict.html#Module">모듈:</a></th><td>mod_example_hooks</td></tr>
</table>
<p><code class="directive">Example</code> 지시어는 example 모듈의
내용핸들러가 간단한 문구를 보일지 여부를 설정한다. 이 지시어는
아규먼트를 받지않는다. example 내용핸들러를 적용한 URL에
접속하면 문서 요청을 서비스하기위해 모듈안에 함수들이 어떻게
그리고 어떤 순서로 불리는지 알 수 있다. 이 지시어의 효과는
"<code>Example directive declared here: YES/NO</code>"로
확인할 수 있다.</p>
</div>
</div>
<div class="bottomlang">
<p><span>가능한 언어: </span><a href="../en/mod/mod_example_hooks.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/mod/mod_example_hooks.html" hreflang="fr" rel="alternate" title="Français"> fr </a> |
<a href="../ko/mod/mod_example_hooks.html" title="Korean"> ko </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Comments</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/mod/mod_example_hooks.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2017 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="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">용어</a> | <a href="../sitemap.html">사이트맵</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>