source: server/major/apache.xml@ e5cf106

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 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 e5cf106 was e5cf106, checked in by Igor Živković <igor@…>, 19 years ago

Updated to Apache-2.0.54.

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

  • Property mode set to 100644
File size: 12.7 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN"
3 "http://www.oasis-open.org/docbook/xml/4.4/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 "4ae8a38c6b5db9046616ce10a0d551a2">
10 <!ENTITY apache-size "5.4 MB">
11 <!ENTITY apache-buildsize "91.6 MB">
12 <!ENTITY apache-time "1.7 SBU">
13]>
14
15<sect1 id="apache" xreflabel="Apache-&apache-version;">
16 <?dbhtml filename="apache.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Apache-&apache-version;</title>
24
25 <indexterm zone="apache">
26 <primary sortas="a-Apache">Apache</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Apache</title>
31
32 <para>The <application>Apache</application> package contains an
33 open-source HTTP server. It is useful for creating local intranet
34 web sites or running huge web serving operations.</para>
35
36 <bridgehead renderas="sect3">Package Information</bridgehead>
37 <itemizedlist spacing="compact">
38 <listitem>
39 <para>Download (HTTP): <ulink url="&apache-download-http;"/></para>
40 </listitem>
41 <listitem>
42 <para>Download (FTP): <ulink url="&apache-download-ftp;"/></para>
43 </listitem>
44 <listitem>
45 <para>Download MD5 sum: &apache-md5sum;</para>
46 </listitem>
47 <listitem>
48 <para>Download size: &apache-size;</para>
49 </listitem>
50 <listitem>
51 <para>Estimated disk space required: &apache-buildsize;</para>
52 </listitem>
53 <listitem>
54 <para>Estimated build time: &apache-time;</para>
55 </listitem>
56 </itemizedlist>
57
58 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
59 <itemizedlist spacing='compact'>
60 <listitem>
61 <para>Required patch: <ulink
62 url="&patch-root;/httpd-&apache-version;-config-1.patch"/></para>
63 </listitem>
64 </itemizedlist>
65
66 <bridgehead renderas="sect3">Apache Dependencies</bridgehead>
67
68 <bridgehead renderas="sect4">Optional</bridgehead>
69 <para><xref linkend="db"/> or <xref linkend="gdbm"/>,
70 <xref linkend="openssl"/>,
71 <xref linkend="openldap"/>,
72 <xref linkend="expat"/> and
73 <xref linkend="doxygen"/></para>
74
75 </sect2>
76
77 <sect2 role="installation">
78 <title>Installation of Apache</title>
79
80 <para>For security reasons, running the server as an unprivileged user and
81 group is strongly encouraged. Create the following group and user using the
82 following commands (as <systemitem class="username">root</systemitem>):</para>
83
84<screen role="root"><userinput>groupadd -g 25 apache &amp;&amp;
85useradd -c "Apache Server" -d /dev/null -g apache \
86 -s /bin/false -u 25 apache</userinput></screen>
87
88 <para>The following patch will define the layout of destination
89 directories and, among them, the build directory at
90 <filename class="directory">/usr/lib/apache/build</filename>. This
91 will allow the modules added to <application>Apache</application>
92 to be configured without errors. Apply the patch:</para>
93
94<screen><userinput>patch -Np1 -i ../httpd-&apache-version;-config-1.patch</userinput></screen>
95
96 <para>Build and install <application>Apache</application> by running the
97 following commands:</para>
98
99<screen><userinput>./configure --enable-layout=FHS --enable-mods-shared=all &amp;&amp;
100make</userinput></screen>
101
102 <para>This package does not come with a test suite.</para>
103
104 <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
105
106<screen role="root"><userinput>make install &amp;&amp;
107chown root:root /usr/sbin/{apxs,apachectl,dbmmanage,envvars-std,envvars} \
108 /usr/include/apache/* /usr/lib/apache/httpd.exp \
109 /usr/share/man/man1/{dbmmanage,htdigest,htpasswd}.1 \
110 /usr/share/man/man8/{ab,apachectl,apxs,httpd}.8 \
111 /usr/share/man/man8/{logresolve,rotatelogs,suexec}.8 &amp;&amp;
112chown -R apache:apache /srv/www</userinput></screen>
113
114 </sect2>
115
116 <sect2 role="commands">
117 <title>Command Explanations</title>
118
119 <para><option>--with-expat=/usr</option>: Uses system installed
120 <application>expat</application>. <emphasis>If you have installed
121 <application>expat</application> and do not use this switch, the
122 <application>Apache</application> installation may overwrite some files
123 from the <application>expat</application> installation.</emphasis></para>
124
125 <para><parameter>--enable-mods-shared=all</parameter>: The modules
126 should be compiled and used as Dynamic Shared Objects
127 (DSOs) so they can be included and excluded from the
128 server using the run-time configuration directives.</para>
129
130 <para><option>--enable-ssl</option>: Use this switch
131 to create the <filename class="libraryfile">mod_ssl</filename>
132 module and enable SSL support.</para>
133
134 <para><command>chown root:root ...</command>: This command changes the
135 ownership of some installed files, the result of building the package as
136 a user other than <systemitem class="username">root</systemitem>.</para>
137
138 <para><command>chown -R apache:apache /srv/www</command>: By default, the
139 installation process installs files (documentation, error messages, default
140 icons, etc.) with the ownership of the user that extracted the files from
141 the tar file. If you want to change the ownership to another user, you
142 should do so at this point. The only requirement is that the document
143 directories need to be accessible by the <command>httpd</command> process
144 with (r-x) permissions and files need to be readable (r--) by the
145 <systemitem class="username">apache</systemitem> user.</para>
146
147 </sect2>
148
149 <sect2 role="configuration">
150 <title>Configuring Apache</title>
151
152 <sect3 id="apache-config">
153 <title>Config Files</title>
154
155 <para><filename>/etc/apache/*</filename></para>
156
157 <indexterm zone="apache apache-config">
158 <primary sortas="e-etc-apache">/etc/apache/*</primary>
159 </indexterm>
160
161 <indexterm zone="apache apache-config">
162 <primary sortas="e-etc-apache-httpd.conf">/etc/apache/httpd.conf</primary>
163 </indexterm>
164
165 </sect3>
166
167 <sect3>
168 <title>Configuration Information</title>
169
170 <para>The main configuration file is named <filename>httpd.conf</filename>.
171 Modify it to run the server as a dedicated user:</para>
172
173<screen role="root"><userinput>sed -i -e "s%User nobody%User apache%" \
174 -e "s%^Group #-1%Group apache%" \
175 /etc/apache/httpd.conf</userinput></screen>
176
177 <para>See <ulink url="http://httpd.apache.org/docs-2.0/configuring.html"/>
178 for detailed instructions on customizing your
179 <application>Apache</application> HTTP server.</para>
180
181 <para>There's a problem with the ISAPI DSO module caused from compiling
182 with <application>GCC</application>-&gcc-version;. Comment out the module
183 from the configuration file with the following command:</para>
184
185<screen role="root"><userinput>sed -i -e "s/^LoadModule isapi_module/# &amp;/" \
186 /etc/apache/httpd.conf</userinput></screen>
187
188 </sect3>
189
190 <sect3 id="apache-init">
191 <title>Boot Script</title>
192
193 <para>If you want the <application>Apache</application> server to
194 start automatically when the system is booted, install the
195 <filename>/etc/rc.d/init.d/apache</filename> init script included
196 in the <xref linkend="intro-important-bootscripts"/> package.</para>
197
198 <indexterm zone="apache apache-init">
199 <primary sortas="f-apache">apache</primary>
200 </indexterm>
201
202<screen role="root"><userinput>make install-apache</userinput></screen>
203
204 </sect3>
205
206 </sect2>
207
208 <sect2 role="content">
209 <title>Contents</title>
210
211 <segmentedlist>
212 <segtitle>Installed Programs</segtitle>
213 <segtitle>Installed Libraries</segtitle>
214 <segtitle>Installed Directories</segtitle>
215
216 <seglistitem>
217 <seg>ab, apachectl, apr-config, apu-config, apxs, checkgid, dbmmanage,
218 htdbm, htdigest, htpasswd, httpd, instdso.sh, logresolve, and
219 rotatelogs</seg>
220 <seg>libapr-0.[so,a], libaprutil-0.[so,a], and /usr/lib/apache/*.so</seg>
221 <seg>/etc/apache, /srv/www, /usr/include/apache, /usr/lib/apache, and
222 /var/log/apache</seg>
223 </seglistitem>
224 </segmentedlist>
225
226 <variablelist>
227 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
228 <?dbfo list-presentation="list"?>
229 <?dbhtml list-presentation="table"?>
230
231 <varlistentry id="ab">
232 <term><command>ab</command></term>
233 <listitem>
234 <para>is a tool for benchmarking your
235 <application>Apache</application> HTTP server.</para>
236 <indexterm zone="apache ab">
237 <primary sortas="b-ab">ab</primary>
238 </indexterm>
239 </listitem>
240 </varlistentry>
241
242 <varlistentry id="apachectl">
243 <term><command>apachectl</command></term>
244 <listitem>
245 <para>is a front end to the <application>Apache</application>
246 HTTP server which is designed to help the administrator
247 control the functioning of the <application>Apache</application>
248 httpd daemon.</para>
249 <indexterm zone="apache apachectl">
250 <primary sortas="b-apachectl">apachectl</primary>
251 </indexterm>
252 </listitem>
253 </varlistentry>
254
255 <varlistentry id="apxs">
256 <term><command>apxs</command></term>
257 <listitem>
258 <para>is a tool for building and installing extension modules for
259 the <application>Apache</application> HTTP server.</para>
260 <indexterm zone="apache apxs">
261 <primary sortas="b-apxs">apxs</primary>
262 </indexterm>
263 </listitem>
264 </varlistentry>
265
266 <varlistentry id="dbmanage">
267 <term><command>dbmanage</command></term>
268 <listitem>
269 <para>is used to create and update the DBM format files used to store
270 usernames and passwords for basic authentication of HTTP users.</para>
271 <indexterm zone="apache dbmanage">
272 <primary sortas="b-dbmanage">dbmanage</primary>
273 </indexterm>
274 </listitem>
275 </varlistentry>
276
277 <varlistentry id="htdigest">
278 <term><command>htdigest</command></term>
279 <listitem>
280 <para>is used to create and update the flat-files used to store
281 usernames, realms and passwords for digest authentication of
282 HTTP users.</para>
283 <indexterm zone="apache htdigest">
284 <primary sortas="b-htdigest">htdigest</primary>
285 </indexterm>
286 </listitem>
287 </varlistentry>
288
289 <varlistentry id="htpasswd">
290 <term><command>htpasswd</command></term>
291 <listitem>
292 <para>is used to create and update the flat-files used to store
293 usernames and passwords for basic authentication of HTTP users.</para>
294 <indexterm zone="apache htpasswd">
295 <primary sortas="b-htpasswd">htpasswd</primary>
296 </indexterm>
297 </listitem>
298 </varlistentry>
299
300 <varlistentry id="httpd">
301 <term><command>httpd</command></term>
302 <listitem>
303 <para>is the <application>Apache</application>
304 HTTP server program.</para>
305 <indexterm zone="apache httpd">
306 <primary sortas="b-httpd">httpd</primary>
307 </indexterm>
308 </listitem>
309 </varlistentry>
310
311 <varlistentry id="instdso.sh">
312 <term><command>instdso.sh</command></term>
313 <listitem>
314 <para>is a script which installs <application>Apache</application>
315 DSO modules.</para>
316 <indexterm zone="apache instdso.sh">
317 <primary sortas="b-instdso.sh">instdso.sh</primary>
318 </indexterm>
319 </listitem>
320 </varlistentry>
321
322 <varlistentry id="logresolve">
323 <term><command>logresolve</command></term>
324 <listitem>
325 <para>is a post-processing program to resolve IP-addresses
326 in <application>Apache</application>'s access log files.</para>
327 <indexterm zone="apache logresolve">
328 <primary sortas="b-logresolve">logresolve</primary>
329 </indexterm>
330 </listitem>
331 </varlistentry>
332
333 <varlistentry id="rotatelogs">
334 <term><command>rotatelogs</command></term>
335 <listitem>
336 <para>is a simple program for use in conjunction with
337 <application>Apache</application>'s piped log file feature.</para>
338 <indexterm zone="apache rotatelogs">
339 <primary sortas="b-rotatelogs">rotatelogs</primary>
340 </indexterm>
341 </listitem>
342 </varlistentry>
343
344 </variablelist>
345
346 </sect2>
347
348</sect1>
Note: See TracBrowser for help on using the repository browser.