source: content/web/apache.xml@ 2ce558b1

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 6.0 6.1 6.2 6.2.0 6.2.0-rc1 6.2.0-rc2 6.3 6.3-rc1 6.3-rc2 6.3-rc3 7.10 7.4 7.5 7.6 7.6-blfs 7.6-systemd 7.7 7.8 7.9 8.0 8.1 8.2 8.3 8.4 9.0 9.1 basic bdubbs/svn elogind gnome kde5-13430 kde5-14269 kde5-14686 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts krejzi/svn lazarus lxqt nosym perl-modules plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition systemd-11177 systemd-13485 trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since 2ce558b1 was 2ce558b1, checked in by Randy McMurchy <randy@…>, 19 years ago

Updated to Doxygen-1.4.1

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@3287 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 9.1 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
3 "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY apache-download-http "http://www.apache.org/dist/httpd/httpd-&apache-version;.tar.bz2">
8 <!ENTITY apache-download-ftp "ftp://ftp.tux.org/pub/net/apache/dist/httpd/httpd-&apache-version;.tar.bz2">
9 <!ENTITY apache-md5sum "0e1b47c53921a1fc8fb006effdb3bf1c">
10 <!ENTITY apache-size "5.2 MB">
11 <!ENTITY apache-buildsize "78 MB">
12 <!ENTITY apache-time "1.12 SBU">
13]>
14
15<sect1 id="apache" xreflabel="Apache-&apache-version;">
16<sect1info>
17<othername>$LastChangedBy$</othername>
18<date>$Date$</date>
19</sect1info>
20<?dbhtml filename="apache.html"?>
21<title>Apache-&apache-version;</title>
22
23<sect2>
24<title>Introduction to <application>Apache</application></title>
25
26<para>The <application>Apache</application> package contains an
27open-source <acronym>HTTP</acronym> server. It is useful for creating local
28intranet web sites or running huge web serving operations.</para>
29
30<sect3><title>Package information</title>
31<itemizedlist spacing='compact'>
32<listitem><para>Download (HTTP):
33<ulink url="&apache-download-http;"/></para></listitem>
34<listitem><para>Download (FTP):
35<ulink url="&apache-download-ftp;"/></para></listitem>
36<listitem><para>Download MD5 sum: &apache-md5sum;</para></listitem>
37<listitem><para>Download size: &apache-size;</para></listitem>
38<listitem><para>Estimated disk space required:
39&apache-buildsize;</para></listitem>
40<listitem><para>Estimated build time: &apache-time;</para></listitem>
41</itemizedlist>
42</sect3>
43
44<sect3><title>Additional downloads</title>
45<itemizedlist spacing='compact'>
46<listitem><para>Required Patch: <ulink
47url="&patch-root;/httpd-&apache-version;-config-1.patch"/></para></listitem>
48</itemizedlist></sect3>
49
50<sect3><title><application>Apache</application> dependencies</title>
51<sect4><title>Optional</title>
52<para><xref linkend="db"/> or <xref linkend="gdbm"/>,
53<xref linkend="openssl-package"/>,
54<xref linkend="openldap"/>,
55<xref linkend="expat"/> and
56<xref linkend="doxygen-package"/></para>
57</sect4>
58</sect3>
59
60</sect2>
61
62<sect2>
63<title>Installation of <application>Apache</application></title>
64
65<para>For security reasons, running the server as an unprivileged user and
66group is strongly encouraged.</para>
67
68<screen><userinput><command>groupadd apache &amp;&amp;
69useradd -c apache -d /dev/null -g apache -s /bin/false apache</command></userinput></screen>
70
71<para>The following patch will define the layout of destination directories
72and, among them, the build directory at
73<filename class="directory">/usr/lib/apache/build</filename>. This
74will allow the modules added to <application>Apache</application> to
75be configured without errors. Apply the patch:</para>
76
77<screen><userinput><command>patch -Np1 -i ../httpd-&apache-version;-config-1.patch</command></userinput></screen>
78
79<para>Build and install <application>Apache</application> by running the
80following commands:</para>
81
82<screen><userinput><command>./configure --enable-layout=FHS \
83 --enable-mods-shared=all &amp;&amp;
84make &amp;&amp;
85make install &amp;&amp;
86chown root:root /usr/sbin/{apxs,apachectl,dbmmanage,envvars-std,envvars} \
87 /usr/include/apache/* /usr/lib/apache/httpd.exp \
88 /usr/share/man/man1/{dbmmanage,htdigest,htpasswd}.1 \
89 /usr/share/man/man8/{ab,apachectl,apxs,httpd}.8 &amp;&amp;
90 /usr/share/man/man8/{logresolve,rotatelogs,suexec}.8 &amp;&amp;
91chown -R apache:apache /srv/www</command></userinput></screen>
92
93</sect2>
94
95<sect2>
96<title>Command explanations</title>
97
98<para><option>--with-expat=/usr</option>: Uses system installed
99<application>expat</application>. <emphasis>If you have installed
100<application>expat</application> and do not use this switch, the
101<application>Apache</application> installation may overwrite some files from
102the <application>expat</application> installation.</emphasis></para>
103
104<para><parameter>--enable-mods-shared=all</parameter>: The modules should be
105compiled and used as Dynamic Shared Objects
106(<acronym>DSO</acronym>s) so they can be included and excluded from the
107server using the run-time configuration directives.</para>
108
109<para><option>--enable-ssl</option>: Use this switch
110to create the <filename class="libraryfile">mod_ssl</filename>
111module and enable <acronym>SSL</acronym> support.</para>
112
113<para><command>chown root:root ...</command>: This command changes
114the ownership of some installed files, the result of building the package as a
115user other than root.</para>
116
117<para><command>chown -R apache:apache /srv/www</command>: By default, the
118installation process installs files (documentation, error messages, default
119icons, etc.) with the ownership of the user that extracted the files from the
120tar file. If you want to change the ownership to another user, you should do
121so at this point. The only requirement is that the document directories need
122to be accessable by the <command>httpd</command> process with (r-x) permissions
123and files need to be readable (r--) by the apache user.</para>
124
125</sect2>
126
127<sect2>
128<title>Configuring <application>Apache</application></title>
129
130<sect3>
131<title>Config files</title>
132
133<para><filename>/etc/apache/*</filename></para>
134
135</sect3>
136
137<sect3>
138<title>Configuration Information</title>
139
140<para>The main configuration file is named <filename>httpd.conf</filename>.
141Modify it to run the server as a dedicated user:</para>
142
143<screen><userinput><command>sed -i -e "s%User nobody%User apache%" \
144 -e "s%^Group #-1%Group apache%" \
145 /etc/apache/httpd.conf</command></userinput></screen>
146
147<para>See <ulink url="http://httpd.apache.org/docs-2.0/configuring.html"/> for
148detailed instructions on customizing your <application>Apache</application>
149<acronym>HTTP</acronym> server.</para>
150
151<para>There's a problem with the ISAPI <acronym>DSO</acronym> module
152caused from compiling with
153<application><acronym>GCC</acronym></application>-3.4.1. Comment out the
154module from the configuration file with the following command:</para>
155
156<screen><userinput><command>sed -i -e "s/^LoadModule isapi_module/# &amp;/" \
157 /etc/apache/httpd.conf</command></userinput></screen>
158
159<para>Install the <filename>/etc/rc.d/init.d/apache</filename>
160init script included in the <xref linkend="intro-important-bootscripts"/>
161package.</para>
162
163<screen><userinput><command>make install-apache</command></userinput></screen>
164</sect3>
165
166</sect2>
167
168<sect2>
169<title>Contents</title>
170
171<para>The <application>Apache</application> package provides
172<command>ab</command>,
173<command>apachectl</command>,
174<command>apr-config</command>,
175<command>apu-config</command>,
176<command>apxs</command>,
177<command>checkgid</command>,
178<command>dbmmanage</command>,
179<command>htdbm</command>,
180<command>htdigest</command>,
181<command>htpasswd</command>,
182<command>httpd</command>,
183<command>instdso.sh</command>,
184<command>logresolve</command>,
185<command>rotatelogs</command>,
186<filename class="libraryfile">libapr</filename>,
187<filename class="libraryfile">libaprutil</filename> and
188various modules.</para>
189</sect2>
190
191<sect2><title>Description</title>
192
193<sect3><title>ab</title>
194<para><command>ab</command> is a tool for benchmarking your
195<application>Apache</application> <acronym>HTTP</acronym> server.
196</para></sect3>
197
198<sect3><title>apachectl</title>
199<para><command>apachectl</command> is a front end to the
200<application>Apache</application> <acronym>HTTP</acronym>
201server which is designed to help the administrator control the
202functioning of the <application>Apache</application> httpd daemon.</para>
203</sect3>
204
205<sect3><title>apxs</title>
206<para><command>apxs</command>
207is a tool for building and installing extension modules for the
208<application>Apache</application> <acronym>HTTP</acronym> server.</para></sect3>
209
210<sect3><title>dbmmanage</title>
211<para><command>dbmmanage</command> is used to create and update the
212<filename>DBM</filename> format files used to store usernames and passwords
213for basic authentication of <acronym>HTTP</acronym>
214users.</para></sect3>
215
216<sect3><title>htdigest</title>
217<para><command>htdigest</command> is used to create and update the
218flat-files used to store usernames, realms and passwords for digest
219authentication of <acronym>HTTP</acronym> users.</para></sect3>
220
221<sect3><title>htpasswd</title>
222<para><command>htpasswd</command> is used to create and update the
223flat-files used to store usernames and passwords for basic authentication of
224<acronym>HTTP</acronym> users.</para></sect3>
225
226<sect3><title>httpd</title>
227<para><command>httpd</command> is the <application>Apache</application>
228<acronym>HTTP</acronym> server program.</para></sect3>
229
230<sect3><title>instdso.sh</title>
231<para><command>instdso.sh</command> is a script which installs
232<application>Apache</application> <acronym>DSO</acronym> modules.</para></sect3>
233
234<sect3><title>logresolve</title>
235<para><command>logresolve</command> is a post-processing program to
236resolve <acronym>IP</acronym>-addresses in <application>Apache</application>'s
237access log files.</para></sect3>
238
239<sect3><title>rotatelogs</title>
240<para><command>rotatelogs</command> is a simple program for use in conjunction
241with <application>Apache</application>'s piped log file feature.</para></sect3>
242
243</sect2>
244
245</sect1>
Note: See TracBrowser for help on using the repository browser.