source: content/web/apache.xml@ cef3a2f

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 cef3a2f was cef3a2f, checked in by Randy McMurchy <randy@…>, 19 years ago

Round 1 of renaming package-name entities

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

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