+++ /dev/null
-<!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>
- <meta name="generator" content="HTML Tidy, see www.w3.org" />
-
- <title>Stopping and Restarting the Server</title>
- </head>
- <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
-
- <body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
- vlink="#000080" alink="#FF0000">
- <!--#include virtual="header.html" -->
-
- <h1 align="CENTER">Stopping and Restarting the Server</h1>
-
- <p>This document covers stopping and restarting Apache on
- Unix-like systems. Windows users should see <a
- href="platform/windows.html#signal">Signalling Apache when
- running</a>.</p>
-
- <p>You will notice many <code>httpd</code> executables running
- on your system, but you should not send signals to any of them
- except the parent, whose pid is in the <a
- href="mod/mpm_common.html#pidfile">PidFile</a>. That is to say you
- shouldn't ever need to send signals to any process except the
- parent. There are three signals that you can send the parent:
- <code>TERM</code>, <code>HUP</code>, and <code>USR1</code>,
- which will be described in a moment.</p>
-
- <p>To send a signal to the parent you should issue a command
- such as:</p>
-
- <blockquote>
-<pre>
- kill -TERM `cat /usr/local/apache/logs/httpd.pid`
-</pre>
- </blockquote>
- You can read about its progress by issuing:
-
- <blockquote>
-<pre>
- tail -f /usr/local/apache/logs/error_log
-</pre>
- </blockquote>
- Modify those examples to match your <a
- href="mod/core.html#serverroot">ServerRoot</a> and <a
- href="mod/mpm_common.html#pidfile">PidFile</a> settings.
-
- <p>A shell script called <a
- href="programs/apachectl.html">apachectl</a> is provided which
- automates the processing of signalling Apache. For details
- about this script, see the documentation on <a
- href="invoking.html">starting Apache</a>.</p>
-
- <h3>Stop Now</h3>
-
- <p><strong>Signal:</strong> TERM<br />
- <code>apachectl stop</code></p>
-
- <p>Sending the <code>TERM</code> signal to the parent causes it
- to immediately attempt to kill off all of its children. It may
- take it several seconds to complete killing off its children.
- Then the parent itself exits. Any requests in progress are
- terminated, and no further requests are served.</p>
-
- <h3>Graceful Restart</h3>
-
- <p><strong>Signal:</strong> USR1<br />
- <code>apachectl graceful</code></p>
-
- <p>The <code>USR1</code> signal causes the parent process to
- <em>advise</em> the children to exit after their current
- request (or to exit immediately if they're not serving
- anything). The parent re-reads its configuration files and
- re-opens its log files. As each child dies off the parent
- replaces it with a child from the new <em>generation</em> of
- the configuration, which begins serving new requests
- immediately.</p>
- <i>On certain platforms that do not allow USR1 to be used for a
- graceful restart, an alternative signal may be used (such as
- WINCH). apachectl graceful will send the right signal for your
- platform.</i>
-
- <p>This code is designed to always respect the <a
- href="mod/mpm_common.html#maxclients">MaxClients</a>, <a
- href="mod/prefork.html#minspareservers">MinSpareServers</a>,
- and <a
- href="mod/prefork.html#maxspareservers">MaxSpareServers</a>
- settings. Furthermore, it respects <a
- href="mod/mpm_common.html#startservers">StartServers</a> in the
- following manner: if after one second at least StartServers new
- children have not been created, then create enough to pick up
- the slack. This is to say that the code tries to maintain both
- the number of children appropriate for the current load on the
- server, and respect your wishes with the StartServers
- parameter.</p>
-
- <p>Users of the <a href="mod/mod_status.html">status module</a>
- will notice that the server statistics are <strong>not</strong>
- set to zero when a <code>USR1</code> is sent. The code was
- written to both minimize the time in which the server is unable
- to serve new requests (they will be queued up by the operating
- system, so they're not lost in any event) and to respect your
- tuning parameters. In order to do this it has to keep the
- <em>scoreboard</em> used to keep track of all children across
- generations.</p>
-
- <p>The status module will also use a <code>G</code> to indicate
- those children which are still serving requests started before
- the graceful restart was given.</p>
-
- <p>At present there is no way for a log rotation script using
- <code>USR1</code> to know for certain that all children writing
- the pre-restart log have finished. We suggest that you use a
- suitable delay after sending the <code>USR1</code> signal
- before you do anything with the old log. For example if most of
- your hits take less than 10 minutes to complete for users on
- low bandwidth links then you could wait 15 minutes before doing
- anything with the old log.</p>
-
- <p><strong>Note:</strong> If your configuration file has errors
- in it when you issue a restart then your parent will not
- restart, it will exit with an error. In the case of graceful
- restarts it will also leave children running when it exits.
- (These are the children which are "gracefully exiting" by
- handling their last request.) This will cause problems if you
- attempt to restart the server -- it will not be able to bind to
- its listening ports. Before doing a restart, you can check the
- syntax of the configuration files with the <code>-t</code>
- command line argument (see <a
- href="programs/httpd.html">httpd</a>). This still will not
- guarantee that the server will restart correctly. To check the
- semantics of the configuration files as well as the syntax, you
- can try starting httpd as a non-root user. If there are no
- errors it will attempt to open its sockets and logs and fail
- because it's not root (or because the currently running httpd
- already has those ports bound). If it fails for any other
- reason then it's probably a config file error and the error
- should be fixed before issuing the graceful restart.</p>
-
- <h3>Restart Now</h3>
-
- <p><strong>Signal:</strong> HUP<br />
- <code>apachectl restart</code></p>
-
- <p>Sending the <code>HUP</code> signal to the parent causes it
- to kill off its children like in <code>TERM</code> but the
- parent doesn't exit. It re-reads its configuration files, and
- re-opens any log files. Then it spawns a new set of children
- and continues serving hits.</p>
-
- <p>Users of the <a href="mod/mod_status.html">status module</a>
- will notice that the server statistics are set to zero when a
- <code>HUP</code> is sent.</p>
-
- <p><strong>Note:</strong> If your configuration file has errors
- in it when you issue a restart then your parent will not
- restart, it will exit with an error. See below for a method of
- avoiding this.</p>
-
- <h3>Appendix: signals and race conditions</h3>
-
- <p>Prior to Apache 1.2b9 there were several <em>race
- conditions</em> involving the restart and die signals (a simple
- description of race condition is: a time-sensitive problem, as
- in if something happens at just the wrong time it won't behave
- as expected). For those architectures that have the "right"
- feature set we have eliminated as many as we can. But it should
- be noted that there still do exist race conditions on certain
- architectures.</p>
-
- <p>Architectures that use an on disk <a
- href="mod/mpm_common.html#scoreboardfile">ScoreBoardFile</a> have the
- potential to corrupt their scoreboards. This can result in the
- "bind: Address already in use" (after <code>HUP</code>) or
- "long lost child came home!" (after <code>USR1</code>). The
- former is a fatal error, while the latter just causes the
- server to lose a scoreboard slot. So it might be advisable to
- use graceful restarts, with an occasional hard restart. These
- problems are very difficult to work around, but fortunately
- most architectures do not require a scoreboard file. See the <a
- href="mod/mpm_common.html#scoreboardfile">ScoreBoardFile</a>
- documentation for a architecture uses it.</p>
-
- <p><code>NEXT</code> and <code>MACHTEN</code> (68k only) have
- small race conditions which can cause a restart/die signal to
- be lost, but should not cause the server to do anything
- otherwise problematic.
- <!-- they don't have sigaction, or we're not using it -djg -->
- </p>
-
- <p>All architectures have a small race condition in each child
- involving the second and subsequent requests on a persistent
- HTTP connection (KeepAlive). It may exit after reading the
- request line but before reading any of the request headers.
- There is a fix that was discovered too late to make 1.2. In
- theory this isn't an issue because the KeepAlive client has to
- expect these events because of network latencies and server
- timeouts. In practice it doesn't seem to affect anything either
- -- in a test case the server was restarted twenty times per
- second and clients successfully browsed the site without
- getting broken images or empty documents.
- <!--#include virtual="footer.html" -->
- </p>
- </body>
-</html>
-
--- /dev/null
+<!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>\e$BDd;_$H:F5/F0\e(B</title>
+ </head>
+ <!-- English revision: 1.24 -->
+ <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
+
+ <body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
+ vlink="#000080" alink="#FF0000">
+ <!--#include virtual="header.html" -->
+
+ <h1 align="center">\e$B%5!<%P$NDd;_$H:F5/F0\e(B</h1>
+
+ <p>\e$B$3$NJ8=q$G$O\e(B Unix \e$B$KN`;w$7$?%7%9%F%`$G$N\e(B
+ Apache \e$B$NDd;_$H:F5/F0$K$D$$$F07$C$F$$$^$9!#\e(BWindows
+ \e$B%f!<%6\e(B (Windows \e$B$G\e(B Apache \e$B$r;H$&>l9g\e(B) \e$B$O!"\e(B<a
+ href="platform/windows.html#signal">\e$B<B9TCf$N\e(B Apache
+ \e$B$K%7%0%J%k$rAw$k\e(B</a>\e$B$b$4Mw2<$5$$!#\e(B</p>
+
+ <p>\e$B$?$/$5$s$N<B9T7A<0\e(B <code>httpd</code> \e$B$,%7%9%F%`>e$G\e(B
+ \e$B<B9T$5$l$F$$$k$N$K5$$,IU$/$G$7$g$&$,!"%7%0%J%k$rAw$k$N$O\e(B
+ \e$B?F%W%m%;%9$@$1$G!"$=$l0J30$N8D!9$N%W%m%;%9$K$O\e(B
+ \e$B%7%0%J%k$rAw$i$J$$$G2<$5$$!#$=$N?F%W%m%;%9$N\e(B pid \e$B$O\e(B
+ <a href="mod/mpm_common.html#pidfile">PidFile</a>
+ \e$B$K=q$+$l$F$$$^$9!#$3$l$O$D$^$j!"?F0J30$N%W%m%;%9$K\e(B
+ \e$B%7%0%J%k$rAw$kI,MW$9$i$J$$!"$H$$$&$3$H$G$9!#\e(B
+ \e$B?F%W%m%;%9$KAw$k$3$H$,$G$-$k\e(B 3 \e$B<oN`$N%7%0%J%k$,$"$j$^$9\e(B:
+ <code>TERM</code>, <code>HUP</code>, <code>USR1</code>
+ \e$B$G$9!#$3$l$i$N@bL@$K$D$$$F$OB3$-$r$4Mw2<$5$$!#\e(B</p>
+
+ <p>\e$B?F%W%m%;%9$K%7%0%J%k$rAw$k$K$O!"\e(B
+ \e$B<!$N$h$&$J%3%^%s%I$rH/9T$7$F2<$5$$\e(B:</p>
+
+ <blockquote>
+<pre>
+ kill -TERM `cat /usr/local/apache/logs/httpd.pid`
+</pre>
+ </blockquote>
+ \e$B$3$l$N<B9T>u67$O<!$N%3%^%s%I$GFI$`$3$H$,$G$-$^$9\e(B:
+
+ <blockquote>
+<pre>
+ tail -f /usr/local/apache/logs/error_log
+</pre>
+ </blockquote>
+ \e$B$3$3$K5s$2$?Nc$O!"3F<+$N\e(B
+ <a href="mod/core.html#serverroot">ServerRoot</a>
+ \e$B$H\e(B
+ <a href="mod/mpm_common.html#pidfile">PidFile</a>
+ \e$B$N@_Dj$KE,9g$9$k$h$&$KE,59=$@5$7$F2<$5$$!#\e(B
+
+ <p><a href="programs/apachectl.html">apachectl</a>
+ \e$B$H8F$P$l$k%7%'%k%9%/%j%W%H$G!"\e(BApache \e$B$K%7%0%J%k$rAw$k<j=g$r\e(B
+ \e$B<+F02=$9$k$3$H$,$G$-$^$9!#$3$N%9%/%j%W%H$N>\:Y$K4X$7$F$O!"\e(B
+ <a href="invoking.html">Apache \e$B$N5/F0\e(B</a>\e$B$NJ8=q$r$4Mw2<$5$$!#\e(B</p>
+
+ <h3>\e$B5^$JDd;_\e(B</h3>
+
+ <p><strong>\e$B%7%0%J%k\e(B:</strong> TERM<br />
+ <code>apachectl stop</code></p>
+
+ <p><code>TERM</code> \e$B%7%0%J%k$r?F%W%m%;%9$KAw$k$H!"\e(B
+ \e$BB(:B$K;R%W%m%;%9A4$F$r\e(B kill \e$B$7$h$&$H$7$^$9!#\e(B
+ \e$B;R%W%m%;%9$r40A4$K\e(B kill \e$B$7=*$o$k$^$G$K?tIC$+$+$k$+$b$7$l$^$;$s!#\e(B
+ \e$B$=$N8e!"?F%W%m%;%9<+?H$,=*N;$7$^$9!#\e(B
+ \e$B=hM}Cf$N%j%/%(%9%H$OA4$FDd;_$5$l!"$b$O$d%j%/%(%9%H$KBP$9$k\e(B
+ \e$B1~Ez$O$5$l$^$;$s!#\e(B</p>
+
+ <h3>\e$B4K$d$+$J:F5/F0\e(B</h3>
+
+ <p><strong>\e$B%7%0%J%k\e(B:</strong> USR1<br />
+ <code>apachectl graceful</code></p>
+
+ <p>\e$B?F%W%m%;%9$O\e(B <code>USR1</code> \e$B%7%0%J%k$r<u$1<h$k$H!"\e(B
+ \e$B;R%W%m%;%9$K8=:_$N%j%/%(%9%H$N=hM}$N8e$K=*N;$9$k\e(B
+ (\e$B$"$k$$$O2?$b$7$F$$$J$1$l$P$9$0$K=*N;$9$k\e(B)
+ \e$B$h$&$K\e(B<em>\e$B=u8@\e(B</em>\e$B$7$^$9!#\e(B
+ \e$B?F%W%m%;%9$O@_Dj%U%!%$%k$r:FFI9~$7$F!"%m%0%U%!%$%k$r3+$-D>$7$^$9!#\e(B
+ \e$B;R%W%m%;%9$,=y!9$K$J$/$J$k$K=>$C$F!"\e(B
+ \e$B?7$7$$\e(B<em>\e$B@$Be\e(B</em>\e$B$N@_Dj$K$h$k;R%W%m%;%9$KCV$-49$($F$$$-$^$9!#\e(B
+ \e$B$=$7$F!"$3$l$i$,?7$?$J%j%/%(%9%H$KB(:B$K1~Ez$7;O$a$^$9!#\e(B</p>
+ <i>\e$BFCDj$N%W%i%C%H%[!<%`$G$O\e(B USR1 \e$B$r4K$d$+$J:F5/F0$N$?$a$K\e(B
+ \e$B;H$&$3$H$,$G$-$^$;$s$,!"Be$o$j$N%7%0%J%k\e(B
+ (\e$BNc$($P\e(B WINCH) \e$B$,;HMQ$G$-$k$G$7$g$&!#\e(B
+ <code>apachectl graceful</code>
+ \e$B$H$$$&%3%^%s%I$O%W%i%C%H%[!<%`$K9g$C$?%7%0%J%k$rAw$j$^$9!#\e(B</i>
+
+ <p>\e$B$3$N%3!<%I$O>o$K\e(B
+ <a href="mod/mpm_common.html#maxclients">MaxClients</a>,
+ <a href="mod/prefork.html#minspareservers">MinSpareServers</a>,
+ <a href="mod/prefork.html#maxspareservers">MaxSpareServers</a>
+ \e$B$N@_Dj$r=E;k$7$^$9!#$^$?!"<!$N$h$&$K$7$F\e(B
+ <a href="mod/mpm_common.html#startservers">StartServers</a>
+ \e$B$r<i$j$^$9\e(B:
+ \e$B>/$J$/$H$b\e(B 1 \e$BIC8e$K\e(B StartServers \e$B8D$N?7$7$$;R%W%m%;%9$,\e(B
+ \e$B@8@.$5$l$F$$$J$1$l$P!"$=$N?t$K$J$k$h$&$KE,59%W%m%;%9$r@8@.$7$^$9!#\e(B
+ \e$B$3$N5sF0$O8@$C$F$_$l$P!"8=:_$NIi2Y$KBP$7$FE,@Z$J;R%W%m%;%9$N?t$H\e(B
+ StartServers \e$B%Q%i%a!<%?$G$N4uK>$N?t$NN>J}$r0];}$7$h$&$H\e(B
+ \e$B$7$F$$$k$H$$$($k$G$7$g$&!#\e(B</p>
+
+ <p><a href="mod/mod_status.html">status \e$B%b%8%e!<%k\e(B</a>\e$B$r\e(B
+ \e$B;HMQ$7$F$$$k>l9g$O!"\e(B<code>USR1</code> \e$B%7%0%J%k$,Aw$i$l$?:]$K\e(B
+ \e$B%5!<%PE}7W$,%<%m$K\e(B<strong>\e$B@_Dj$5$l$J$$\e(B</strong>\e$B$3$H$K\e(B
+ \e$BCm0U$7$F$/$@$5$$!#\e(B
+ \e$B%5!<%P$,?7$7$$%j%/%(%9%H$K1~EzITG=$J;~4V$r:G>.$K$9$k$h$&$K\e(B
+ (\e$B%j%/%(%9%H$O\e(B OS \e$B$K$h$C$F%-%e!<$KDI2C$5$l$k$N$G@dBP$KJ6<:$O$7$^$;$s\e(B)\e$B!"\e(B
+ \e$B$^$?F1;~$K!"4uK>$N%A%e!<%K%s%0%Q%i%a!<%?$r<i$k$h$&$K\e(B
+ \e$B%3!<%I$O=q$+$l$F$$$^$9!#\e(B
+ \e$B$3$N$h$&$K$9$k$?$a$K!"@$Be$r$^$?$,$C$?A4;R%W%m%;%9$NDI@W$K;H$o$l$F$$$k\e(B
+ <em>\e$B%9%3%"%\!<%I\e(B</em>\e$B$r0];}$7$J$1$l$P$J$j$^$;$s!#\e(B</p>
+
+ <p>status \e$B%b%8%e!<%k$O!"4K$d$+$J:F5/F00JA0$+$i3+;O$7$F\e(B
+ \e$B%j%/%(%9%H$K1~Ez$7B3$1$F$$$k;R%W%m%;%9$rFCDj$9$k$?$a$K!"\e(B
+ <code>G</code> \e$B$r;H$&$3$H$b$7$^$9!#\e(B</p>
+
+ <p>\e$B8=:_!"\e(B<code>USR1</code> \e$B$r;H$&%m%00\F0%9%/%j%W%H$G$O!"\e(B
+ \e$B:F5/F0A0$N;R%W%m%;%9$,%m%0$r=q$-=*$o$C$?$3$H$r3N>Z$9$kJ}K!$,\e(B
+ \e$B$"$j$^$;$s!#8E$$%m%0$KBP$7$F2?$+$9$kA0$K!"\e(B
+ <code>USR1</code> \e$B%7%0%J%k$rAw$C$?8e$$$/$i$+E,Ev$J;~4VBT$D$3$H$r\e(B
+ \e$BDs0F$7$^$9!#Nc$($P!"BS0h$N69$$DL?.O)$N%f!<%6$N%j%/%(%9%H$N$[$H$s$I$,\e(B 10
+ \e$BJ,0J2<$G40N;$7$F$$$k$H$$$&$3$H$,J,$+$C$F$$$l$P!"\e(B
+ \e$B8E$$%m%0$K2?$+$9$kA0$K\e(B 15 \e$BJ,BT$D$H$$$&$3$H$G$9!#\e(B</p>
+
+ <p><strong>\e$BCm0U\e(B:</strong> \e$B:F5/F0;~$K@_Dj%U%!%$%k$K8m$j$,$"$k$H!"\e(B
+ \e$B?F%W%m%;%9$O:F5/F0$;$:$K%(%i!<$H$H$b$K=*N;$7$^$9!#\e(B
+ \e$B4K$d$+$J:F5/F0$N>l9g$O!"?F%W%m%;%9$,=*N;$7$?8e$G$b;R%W%m%;%9$,\e(B
+ \e$B<B9T$5$l$?$^$^J|CV$5$l$?$j$b$7$^$9!#\e(B
+ (\e$B:G8e$N%j%/%(%9%H$r=hM}$7$?8e!V4K$d$+$K=*N;!W$9$k\e(B
+ \e$B;R%W%m%;%9$H$J$j$^$9!#\e(B)
+ \e$B%5!<%P$r:F5/F0$9$k:]$K!"$3$l$,LdBj$K$J$k$+$b$7$l$^$;$s\e(B
+ -- \e$B%5!<%P$O\e(B listen \e$B$9$k%]!<%H$K%P%$%s%I$G$-$J$$$+$b$7$l$^$;$s!#\e(B
+ \e$B:F5/F0$9$kA0$K!"@_Dj%U%!%$%k$N9=J8$r\e(B <code>-t</code>
+ \e$B%3%^%s%I%i%$%s0z?t\e(B
+ (<a href="programs/httpd.html">httpd</a> \e$B$r$4Mw2<$5$$\e(B)
+ \e$B$r;H$C$F8!>Z$9$k$3$H$,$G$-$^$9!#\e(B
+ \e$B@_Dj%U%!%$%k$N0UL#E*$JFbMF$r9=J8$HF1MM$K8!>Z$7$?$$>l9g$O!"\e(B
+ \e$BHs\e(B root \e$B%f!<%6$G\e(B httpd \e$B$r5/F0$7$h$&$H$9$l$P$o$+$j$^$9!#\e(B
+ \e$B$b$7%(%i!<$,$J$1$l$P!"%=%1%C%H$d%m%0$r3+$3$&$H$7$F\e(B
+ root \e$B$G$J$$$?$a\e(B
+ (\e$B$b$7$/$O\e(B httpd \e$B$,4{$KI,MW$J%]!<%H$K%P%$%s%I$7$F$$$k$?$a\e(B)
+ \e$B$K<:GT$9$k$G$7$g$&!#\e(B
+ \e$B$3$l0J30$NM}M3$G5/F0$K<:GT$7$?$N$G$"$l$P!"\e(B
+ \e$B$=$l$O@_Dj%U%!%$%k$N%(%i!<$G!"\e(B
+ \e$B4K$d$+$J:F5/F0$r9T$&A0$K$=$N8m$j$r=$@5$7$J$1$l$P$J$j$^$;$s!#\e(B</p>
+
+ <h3>\e$B5^$J:F5/F0\e(B</h3>
+
+ <p><strong>\e$B%7%0%J%k\e(B:</strong> HUP<br />
+ <code>apachectl restart</code></p>
+
+ <p><code>HUP</code> \e$B%7%0%J%k$r?F%W%m%;%9$KAw$k$H!"\e(B
+ <code>TERM</code> \e$B$HF1MM$K;R%W%m%;%9$r\e(B kill \e$B$7$^$9$,!"\e(B
+ \e$B?F%W%m%;%9$O=*N;$7$^$;$s!#\e(B
+ \e$B@_Dj%U%!%$%k$r:FFI9~$7$F!"%m%0%U%!%$%kA4$F$r3+$-D>$7$^$9!#\e(B
+ \e$B$=$N8e!"?7$7$$;R%W%m%;%9$r5/F0$7$F1~Ez$rB3$1$^$9!#\e(B</p>
+
+ <p><a href="mod/mod_status.html">status \e$B%b%8%e!<%k\e(B</a>
+ \e$B$r;H$C$F$$$k>l9g$O!"\e(B<code>HUP</code> \e$B$,Aw$i$l$?>l9g$K\e(B
+ \e$B%5!<%PE}7W$,%<%m$K@_Dj$5$l$k$3$H$KCm0U$7$F$/$@$5$$!#\e(B</p>
+
+ <p><strong>\e$BCm0U\e(B:</strong> \e$B:F5/F0;~$K@_Dj%U%!%$%k$K8m$j$,$"$k$H!"\e(B
+ \e$B?F%W%m%;%9$O:F5/F0$;$:$K%(%i!<$H$H$b$K=*N;$7$^$9!#\e(B
+ \e$B$3$l$rHr$1$k$K$O<!$NJ}K!$r$4Mw2<$5$$!#\e(B</p>
+
+ <h3>\e$BIUO?\e(B: \e$B%7%0%J%k$H6%9g>uBV\e(B</h3>
+
+ <p>Apache 1.2b9 \e$B0JA0$O!":F5/F0$dDd;_$N%7%0%J%k$r4^$`\e(B<em>\e$B6%9g>uBV\e(B</em>
+ (\e$B6%9g>uBV$r4JC1$K@bL@$9$k$H\e(B: \e$B%?%$%_%s$K%0$h$kLdBj$G!"\e(B
+ \e$B6q9g$N0-$$;~4VBS$K$A$g$&$I2?$+$,5/$3$k$HM=A[30$NF0:n$r$9$k\e(B
+ \e$B$h$&$J$3$H$r;X$7$^$9\e(B) \e$B$,$"$j$^$7$?!#\e(B
+ \e$B!V@5$7$$!W5!G=$r;}$C$F$$$k%"!<%-%F%/%A%c$G$O!"$G$-$k$@$1\e(B
+ \e$B$3$N$h$&$J$3$H$,5/$3$i$J$$$h$&$K$7$F$$$^$9!#\e(B
+ \e$B$7$+$7!"$"$k<o$N%"!<%-%F%/%A%c$G$O6%9g>uBV$OL$$@3N<B$K5/$3$j$($k\e(B
+ \e$B$H$$$&$3$H$KCm0U$7$F$/$@$5$$!#\e(B</p>
+
+ <p>\e$B%G%#%9%/>e$G\e(B
+ <a href="mod/mpm_common.html#scoreboardfile">ScoreBoardFile</a>
+ \e$B$r;HMQ$7$F$$$k%"!<%-%F%/%A%c$G$O!"\e(B
+ \e$B@x:_E*$K%9%3%"%\!<%I$,2u$l$k2DG=@-$,$"$j$^$9!#\e(B
+ \e$B%9%3%"%\!<%I$,2u$l$?>l9g$O!"\e(B
+ "bind: Address already in use" (<code>HUP</code> \e$B8e\e(B) \e$B$d\e(B
+ "long lost child came home!" (<code>USR1</code> \e$B8e\e(B)
+ \e$B$H$$$C$?7k2L$K$J$j$^$9!#\e(B
+ \e$BA0<T$OCWL?E*$J%(%i!<$G$9$,!"\e(B
+ \e$B8e<T$O%9%3%"%\!<%I%9%m%C%H$r<:$&$@$1$G$9!#\e(B
+ \e$B$G$9$+$i4K$d$+$J:F5/F0$O!"$?$^$K3N<B$J:F5/F0\e(B (HUP)
+ \e$B$bJ;MQ$7$F;H$C$?J}$,NI$$$G$7$g$&!#\e(B
+ \e$B$3$l$i$NLdBj$r9nI~$9$k$N$OHs>o$KFq$7$$$N$G$9$,!"\e(B
+ \e$B9,$$$J$3$H$KBgItJ,$N%"!<%-%F%/%A%c$G$O%9%3%"%\!<%I$N%U%!%$%k$OI,MW$"$j$^$;$s!#\e(B
+ \e$B$3$l$r;HMQ$9$k%"!<%-%F%/%A%c$O!"\e(B
+ <a href="mod/mpm_common.html#scoreboardfile">ScoreBoardFile</a>
+ \e$B$r$4Mw2<$5$$!#\e(B</p>
+
+ <p><code>NEXT</code> \e$B$d\e(B <code>MACHTEN</code> (68k \e$B$N$_\e(B)
+ \e$B$O!":F5/F0$H=*N;$N%7%0%J%k$r<:$&$h$&$J>.$5$J6%9g>uBV$r;}$C$F$$$^$9$,!"\e(B
+ \e$B$=$NB>$KLdBj$K$J$k$h$&$J$3$H$r%5!<%P$K5Z$\$9$3$H$O$"$j$^$;$s!#\e(B
+ <!-- they don't have sigaction, or we're not using it -djg -->
+ </p>
+
+ <p>\e$BA4$F$N%"!<%-%F%/%A%c$K$*$$$F!"8D!9$N;R%W%m%;%9$G\e(B
+ \e$B7QB3E*$J\e(B HTTP \e$B%3%M%/%7%g%s\e(B (KeepAlive)
+ \e$B$K4X$9$k>.$5$J6%9g>uBV$,5/$3$j$($^$9!#\e(B
+ \e$B%j%/%(%9%H9T$rFI$s$@8e!"$=$7$F%j%/%(%9%H%X%C%@$rFI$`A0$K\e(B
+ \e$B;R%W%m%;%9$O=*N;$9$k$+$bCN$l$^$;$s!#\e(B
+ \e$B$3$l$KBP$9$k=$@5$,$"$j$^$9$,\e(B 1.2 \e$B$G=$@5$9$k$K$OH/8+$,CY$9$.$^$7$?!#\e(B
+ \e$BM}O@E*$K$O!"$3$l$OLdBj$G$O$"$j$^$;$s!#\e(B
+ \e$B$J$<$J$i\e(B KeepAlive \e$B$N%/%i%$%"%s%H$O!"%M%C%H%o!<%/CY1d$d\e(B
+ \e$B%5!<%P$N%?%$%`%"%&%H$J$I$KHw$($F$$$J$1$l$P$J$i$J$$$+$i$G$9!#\e(B
+ \e$B<B:]$K$b2?$+1F6A$,$"$k$h$&$K$O8+$($^$;$s\e(B
+ -- \e$B%F%9%H%1!<%9$G%5!<%P$r\e(B 1 \e$BIC4V$K\e(B 20 \e$B2s:F5/F0$7$F$b\e(B
+ \e$B%/%i%$%"%s%H$O2u$l$?2hA|$d6u$N%I%-%e%a%s%H$r<u$1<h$k$3$H$J$/\e(B
+ \e$B@5>o$K1\Mw$G$-$F$$$^$9!#\e(B</p>
+ <!--#include virtual="footer.html" -->
+ </body>
+</html>
+