mirror of
				https://github.com/apache/httpd.git
				synced 2025-11-03 17:53:20 +03:00 
			
		
		
		
	git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1335588 13f79535-47bb-0310-9956-ffa450edef68
		
			
				
	
	
		
			470 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			470 lines
		
	
	
		
			26 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
<?xml version="1.0" encoding="ISO-8859-1"?>
 | 
						||
<!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="en" xml:lang="en"><head><!--
 | 
						||
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 | 
						||
              This file is generated from xml source: DO NOT EDIT
 | 
						||
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 | 
						||
      -->
 | 
						||
<title>Compiling and Installing - Apache HTTP Server</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.js" type="text/javascript">
 | 
						||
</script>
 | 
						||
 | 
						||
<link href="./images/favicon.ico" rel="shortcut icon" /></head>
 | 
						||
<body id="manual-page"><div id="page-header">
 | 
						||
<p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p>
 | 
						||
<p class="apache">Apache HTTP Server Version 2.5</p>
 | 
						||
<img alt="" src="./images/feather.gif" /></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.5</a></div><div id="page-content"><div id="preamble"><h1>Compiling and Installing</h1>
 | 
						||
<div class="toplang">
 | 
						||
<p><span>Available Languages: </span><a href="./de/install.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
 | 
						||
<a href="./en/install.html" title="English"> en </a> |
 | 
						||
<a href="./es/install.html" hreflang="es" rel="alternate" title="Espa<70>ol"> es </a> |
 | 
						||
<a href="./fr/install.html" hreflang="fr" rel="alternate" title="Fran<61>ais"> fr </a> |
 | 
						||
<a href="./ja/install.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
 | 
						||
<a href="./ko/install.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
 | 
						||
<a href="./tr/install.html" hreflang="tr" rel="alternate" title="T<>rk<72>e"> tr </a></p>
 | 
						||
</div>
 | 
						||
 | 
						||
 | 
						||
    <p>This document covers compilation and installation of the Apache HTTP Server
 | 
						||
    on Unix and Unix-like systems only. For compiling and
 | 
						||
    installation on Windows, see <a href="platform/windows.html">Using Apache HTTP Server with Microsoft
 | 
						||
    Windows</a>. For other platforms, see the <a href="platform/">platform</a> documentation.</p>
 | 
						||
 | 
						||
    <p>Apache httpd uses <code>libtool</code> and <code>autoconf</code>
 | 
						||
    to create a build environment that looks like many other Open Source
 | 
						||
    projects.</p>
 | 
						||
 | 
						||
    <p>If you are upgrading from one minor version to the next (for
 | 
						||
    example, 2.2.50 to 2.2.51), please skip down to the <a href="#upgrading">upgrading</a> section.</p>
 | 
						||
 | 
						||
</div>
 | 
						||
<div id="quickview"><ul id="toc"><li><img alt="" src="./images/down.gif" /> <a href="#overview">Overview for the
 | 
						||
    impatient</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#requirements">Requirements</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#download">Download</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#extract">Extract</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#configure">Configuring the source tree</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#compile">Build</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#install">Install</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#customize">Customize</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#test">Test</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#upgrading">Upgrading</a></li>
 | 
						||
<li><img alt="" src="./images/down.gif" /> <a href="#thirdp">Third-party packages</a></li>
 | 
						||
</ul><h3>See also</h3><ul class="seealso"><li><a href="programs/configure.html">Configure the source tree</a></li><li><a href="invoking.html">Starting Apache httpd</a></li><li><a href="stopping.html">Stopping and Restarting</a></li></ul><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="overview" id="overview">Overview for the
 | 
						||
    impatient</a></h2>
 | 
						||
 | 
						||
    <table>
 | 
						||
      
 | 
						||
      <tr>
 | 
						||
        <td><a href="#download">Download</a></td>
 | 
						||
 | 
						||
        <td><code>$ lynx http://httpd.apache.org/download.cgi</code>
 | 
						||
        </td>
 | 
						||
      </tr>
 | 
						||
 | 
						||
      <tr>
 | 
						||
        <td><a href="#extract">Extract</a></td>
 | 
						||
 | 
						||
        <td><code>$ gzip -d httpd-<em>NN</em>.tar.gz<br />
 | 
						||
         $ tar xvf httpd-<em>NN</em>.tar<br />
 | 
						||
         $ cd httpd-<em>NN</em></code></td>
 | 
						||
      </tr>
 | 
						||
 | 
						||
      <tr>
 | 
						||
        <td><a href="#configure">Configure</a></td>
 | 
						||
 | 
						||
        <td><code>$ ./configure --prefix=<em>PREFIX</em></code>
 | 
						||
        </td>
 | 
						||
      </tr>
 | 
						||
 | 
						||
      <tr>
 | 
						||
        <td><a href="#compile">Compile</a></td>
 | 
						||
 | 
						||
        <td><code>$ make</code> </td>
 | 
						||
      </tr>
 | 
						||
 | 
						||
      <tr>
 | 
						||
        <td><a href="#install">Install</a></td>
 | 
						||
 | 
						||
        <td><code>$ make install</code> </td>
 | 
						||
      </tr>
 | 
						||
 | 
						||
      <tr>
 | 
						||
        <td><a href="#customize">Customize</a></td>
 | 
						||
 | 
						||
        <td><code>$ vi <em>PREFIX</em>/conf/httpd.conf</code> </td>
 | 
						||
      </tr>
 | 
						||
 | 
						||
      <tr>
 | 
						||
        <td><a href="#test">Test</a></td>
 | 
						||
 | 
						||
        <td><code>$ <em>PREFIX</em>/bin/apachectl -k start</code>
 | 
						||
        </td>
 | 
						||
      </tr>
 | 
						||
    </table>
 | 
						||
 | 
						||
    <p><em>NN</em> must be replaced with the current version
 | 
						||
    number, and <em>PREFIX</em> must be replaced with the
 | 
						||
    filesystem path under which the server should be installed. If
 | 
						||
    <em>PREFIX</em> is not specified, it defaults to
 | 
						||
    <code>/usr/local/apache2</code>.</p>
 | 
						||
 | 
						||
    <p>Each section of the compilation and installation process is
 | 
						||
    described in more detail below, beginning with the requirements
 | 
						||
    for compiling and installing Apache httpd.</p>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="requirements" id="requirements">Requirements</a></h2>
 | 
						||
 | 
						||
    <p>The following requirements exist for building Apache httpd:</p>
 | 
						||
 | 
						||
    <dl>
 | 
						||
      <dt>APR and APR-Util</dt>
 | 
						||
      <dd>Make sure you have APR and APR-Util already installed on
 | 
						||
      your system. If you don't, or prefer to not use the system-provided
 | 
						||
      versions, download the latest versions of both APR and APR-Util
 | 
						||
      from <a href="http://apr.apache.org/">Apache APR</a>, unpack
 | 
						||
      them into <code>./srclib/apr</code> and <code>./srclib/apr-util</code>
 | 
						||
      (be sure the domain names do not have version numbers; for example,
 | 
						||
      the APR distribution must be under ./srclib/apr/) and use
 | 
						||
      <code>./configure</code>'s <code>--with-included-apr</code>
 | 
						||
      option.  On some platforms, you may have to install the 
 | 
						||
      corresponding <code>-dev</code> packages to allow httpd to build 
 | 
						||
      against your installed copy of APR and APR-Util.</dd>
 | 
						||
 | 
						||
      <dt>Perl-Compatible Regular Expressions Library (PCRE)</dt>
 | 
						||
      <dd>This library is required but not longer bundled with httpd.  
 | 
						||
      Download the source code from <a href="http://www.pcre.org/">http://www.pcre.org</a>, 
 | 
						||
      or install a Port or Package.  If your build system can't find
 | 
						||
      the pcre-config script installed by the PCRE build, point to it
 | 
						||
      using the <code>--with-pcre</code> parameter.  On some platforms, 
 | 
						||
      you may have to install the corresponding <code>-dev</code> 
 | 
						||
      package to allow httpd to build against your installed copy 
 | 
						||
      of PCRE.</dd>
 | 
						||
      
 | 
						||
      <dt>Disk Space</dt>
 | 
						||
      <dd>Make sure you have at least 50 MB of temporary free disk
 | 
						||
      space available. After installation the server occupies
 | 
						||
      approximately 10 MB of disk space. The actual disk space
 | 
						||
      requirements will vary considerably based on your chosen
 | 
						||
      configuration options, any third-party modules, and, of course,
 | 
						||
      the size of the web site or sites that you have on the server.</dd>
 | 
						||
 | 
						||
      <dt>ANSI-C Compiler and Build System</dt>
 | 
						||
      <dd>Make sure you have an ANSI-C compiler installed. The <a href="http://gcc.gnu.org/">GNU C
 | 
						||
      compiler (GCC)</a> from the <a href="http://www.gnu.org/">Free Software Foundation (FSF)</a>
 | 
						||
      is recommended. If you don't have GCC
 | 
						||
      then at least make sure your vendor's compiler is ANSI
 | 
						||
      compliant. In addition, your <code>PATH</code> must contain
 | 
						||
      basic build tools such as <code>make</code>.</dd>
 | 
						||
 | 
						||
      <dt>Accurate time keeping</dt>
 | 
						||
      <dd>Elements of the HTTP protocol are expressed as the time of
 | 
						||
      day. So, it's time to investigate setting some time
 | 
						||
      synchronization facility on your system. Usually the
 | 
						||
      <code>ntpdate</code> or <code>xntpd</code> programs are used for
 | 
						||
      this purpose which are based on the Network Time Protocol (NTP).
 | 
						||
      See the <a href="http://www.ntp.org">NTP
 | 
						||
      homepage</a> for more details about NTP software and public
 | 
						||
      time servers.</dd>
 | 
						||
 | 
						||
      <dt><a href="http://www.perl.org/">Perl 5</a>
 | 
						||
      [OPTIONAL]</dt>
 | 
						||
      <dd>For some of the support scripts like <code class="program"><a href="./programs/apxs.html">apxs</a></code> or <code class="program"><a href="./programs/dbmmanage.html">dbmmanage</a></code> (which are
 | 
						||
      written in Perl) the Perl 5 interpreter is required (versions
 | 
						||
      5.003 or newer are sufficient). If you have multiple Perl
 | 
						||
      interpreters (for example, a systemwide install of Perl 4, and
 | 
						||
      your own install of Perl 5), you are advised to use the
 | 
						||
      <code>--with-perl</code> option (see below) to make sure the
 | 
						||
      correct one is used by <code class="program"><a href="./programs/configure.html">configure</a></code>.
 | 
						||
      If no Perl 5 interpreter is found by the
 | 
						||
      <code class="program"><a href="./programs/configure.html">configure</a></code> script, you will not be able to use
 | 
						||
      the affected support scripts. Of course, you will still be able to
 | 
						||
      build and use Apache httpd.</dd>
 | 
						||
    </dl>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="download" id="download">Download</a></h2>
 | 
						||
 | 
						||
    <p>The Apache HTTP Server can be downloaded from the <a href="http://httpd.apache.org/download.cgi">Apache HTTP Server
 | 
						||
    download site</a>, which lists several mirrors.  Most users of
 | 
						||
    Apache on unix-like systems will be better off downloading and
 | 
						||
    compiling a source version.  The build process (described below) is
 | 
						||
    easy, and it allows you to customize your server to suit your needs.
 | 
						||
    In addition, binary releases are often not up to date with the latest
 | 
						||
    source releases.  If you do download a binary, follow the instructions
 | 
						||
    in the <code>INSTALL.bindist</code> file inside the distribution.</p>
 | 
						||
 | 
						||
    <p>After downloading, it is important to verify that you have a
 | 
						||
    complete and unmodified version of the Apache HTTP Server. This
 | 
						||
    can be accomplished by testing the downloaded tarball against the
 | 
						||
    PGP signature.  Details on how to do this are available on the <a href="http://httpd.apache.org/download.cgi#verify">download
 | 
						||
    page</a> and an extended example is available describing the <a href="http://httpd.apache.org/dev/verification.html">use of
 | 
						||
    PGP</a>.</p>
 | 
						||
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="extract" id="extract">Extract</a></h2>
 | 
						||
 | 
						||
    <p>Extracting the source from the Apache HTTP Server tarball is a
 | 
						||
    simple matter of uncompressing, and then untarring:</p>
 | 
						||
 | 
						||
<div class="example"><p><code>
 | 
						||
$ gzip -d httpd-<em>NN</em>.tar.gz<br />
 | 
						||
$ tar xvf httpd-<em>NN</em>.tar
 | 
						||
</code></p></div>
 | 
						||
 | 
						||
    <p>This will create a new directory under the current directory
 | 
						||
    containing the source code for the distribution. You should
 | 
						||
    <code>cd</code> into that directory before proceeding with
 | 
						||
    compiling the server.</p>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="configure" id="configure">Configuring the source tree</a></h2>
 | 
						||
 | 
						||
    <p>The next step is to configure the Apache source tree for your
 | 
						||
    particular platform and personal requirements. This is done using
 | 
						||
    the script <code class="program"><a href="./programs/configure.html">configure</a></code> included in
 | 
						||
    the root directory of the distribution. (Developers downloading
 | 
						||
    an unreleased version of the Apache source tree will need to have
 | 
						||
    <code>autoconf</code> and <code>libtool</code> installed and will
 | 
						||
    need to run <code>buildconf</code> before proceeding with the next
 | 
						||
    steps. This is not necessary for official releases.)</p>
 | 
						||
 | 
						||
    <p>To configure the source tree using all the default options,
 | 
						||
    simply type <code>./configure</code>. To change the default
 | 
						||
    options, <code class="program"><a href="./programs/configure.html">configure</a></code> accepts a variety of variables
 | 
						||
    and command line options.</p>
 | 
						||
 | 
						||
    <p>The most important option is the location <code>--prefix</code>
 | 
						||
    where Apache is to be installed later, because Apache has to be
 | 
						||
    configured for this location to work correctly.  More fine-tuned
 | 
						||
    control of the location of files is possible with additional <a href="programs/configure.html#installationdirectories">configure
 | 
						||
    options</a>.</p>
 | 
						||
 | 
						||
    <p>Also at this point, you can specify which <a href="programs/configure.html#optionalfeatures">features</a> you
 | 
						||
    want included in Apache by enabling and disabling <a href="mod/">modules</a>.  Apache comes with a wide range of modules
 | 
						||
    included by default.  They will be compiled as
 | 
						||
    <a href="dso.html">shared objects (DSOs)</a> which can be loaded
 | 
						||
    or unloaded at runtime.
 | 
						||
    You can also choose to compile modules statically by using the option
 | 
						||
    <code>--enable-<var>module</var>=static</code>.</p>
 | 
						||
 | 
						||
    <p>Additional modules are enabled using the
 | 
						||
    <code>--enable-<var>module</var></code> option, where
 | 
						||
    <var>module</var> is the name of the module with the
 | 
						||
    <code>mod_</code> string removed and with any underscore converted
 | 
						||
    to a dash.  Similarly, you can disable modules with the
 | 
						||
    <code>--disable-<var>module</var></code> option.  Be careful when
 | 
						||
    using these options, since <code class="program"><a href="./programs/configure.html">configure</a></code> cannot warn you
 | 
						||
    if the module you specify does not exist; it will simply ignore the
 | 
						||
    option.</p>
 | 
						||
 | 
						||
    <p>In addition, it is sometimes necessary to provide the
 | 
						||
    <code class="program"><a href="./programs/configure.html">configure</a></code> script with extra information about the
 | 
						||
    location of your compiler, libraries, or header files.  This is
 | 
						||
    done by passing either environment variables or command line
 | 
						||
    options to <code class="program"><a href="./programs/configure.html">configure</a></code>.  For more information, see the
 | 
						||
    <code class="program"><a href="./programs/configure.html">configure</a></code> manual page. Or invoke
 | 
						||
    <code class="program"><a href="./programs/configure.html">configure</a></code> using the <code>--help</code> option.</p>
 | 
						||
 | 
						||
    <p>For a short impression of what possibilities you have, here
 | 
						||
    is a typical example which compiles Apache for the installation
 | 
						||
    tree <code>/sw/pkg/apache</code> with a particular compiler and flags
 | 
						||
    plus the two additional modules <code class="module"><a href="./mod/mod_ldap.html">mod_ldap</a></code> and
 | 
						||
    <code class="module"><a href="./mod/mod_lua.html">mod_lua</a></code>:</p>
 | 
						||
 | 
						||
<div class="example"><p><code>
 | 
						||
      $ CC="pgcc" CFLAGS="-O2" \<br />
 | 
						||
       ./configure --prefix=/sw/pkg/apache \<br />
 | 
						||
       --enable-ldap=shared \<br />
 | 
						||
       --enable-lua=shared
 | 
						||
</code></p></div>
 | 
						||
 | 
						||
    <p>When <code class="program"><a href="./programs/configure.html">configure</a></code> is run it will take several minutes to
 | 
						||
    test for the availability of features on your system and build
 | 
						||
    Makefiles which will later be used to compile the server.</p>
 | 
						||
 | 
						||
    <p>Details on all the different <code class="program"><a href="./programs/configure.html">configure</a></code> options are
 | 
						||
    available on the <code class="program"><a href="./programs/configure.html">configure</a></code> manual page.</p>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="compile" id="compile">Build</a></h2>
 | 
						||
 | 
						||
    <p>Now you can build the various parts which form the Apache
 | 
						||
    package by simply running the command:</p>
 | 
						||
 | 
						||
<div class="example"><p><code>$ make</code></p></div>
 | 
						||
 | 
						||
    <p>Please be patient here, since a base configuration takes
 | 
						||
    several minutes to compile and the time will vary widely
 | 
						||
    depending on your hardware and the number of modules that you
 | 
						||
    have enabled.</p>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="install" id="install">Install</a></h2>
 | 
						||
 | 
						||
    <p>Now it's time to install the package under the configured
 | 
						||
    installation <em>PREFIX</em> (see <code>--prefix</code> option
 | 
						||
    above) by running:</p>
 | 
						||
 | 
						||
<div class="example"><p><code>$ make install</code></p></div>
 | 
						||
 | 
						||
    <p>This step will typically require root privileges, since
 | 
						||
    <em>PREFIX</em> is usually a directory with restricted write
 | 
						||
    permissions.</p>
 | 
						||
 | 
						||
    <p>If you are upgrading, the installation will not overwrite
 | 
						||
    your configuration files or documents.</p>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="customize" id="customize">Customize</a></h2>
 | 
						||
 | 
						||
    <p>Next, you can customize your Apache HTTP server by editing
 | 
						||
    the <a href="configuring.html">configuration files</a> under
 | 
						||
    <code><em>PREFIX</em>/conf/</code>.</p>
 | 
						||
 | 
						||
<div class="example"><p><code>$ vi <em>PREFIX</em>/conf/httpd.conf</code></p></div>
 | 
						||
 | 
						||
    <p>Have a look at the Apache manual under
 | 
						||
    <code><em>PREFIX</em>/docs/manual/</code> or consult <a href="http://httpd.apache.org/docs/trunk/">http://httpd.apache.org/docs/trunk/</a> for the most recent
 | 
						||
    version of this manual and a complete reference of available <a href="mod/directives.html">configuration directives</a>.</p>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="test" id="test">Test</a></h2>
 | 
						||
 | 
						||
    <p>Now you can <a href="invoking.html">start</a> your Apache
 | 
						||
    HTTP server by immediately running:</p>
 | 
						||
 | 
						||
<div class="example"><p><code>$ <em>PREFIX</em>/bin/apachectl -k start</code></p></div>
 | 
						||
 | 
						||
    <p>You should then be able to request your first document
 | 
						||
    via the URL <code>http://localhost/</code>. The web page you see is located
 | 
						||
    under the <code class="directive"><a href="./mod/core.html#documentroot">DocumentRoot</a></code>,
 | 
						||
    which will usually be <code><em>PREFIX</em>/htdocs/</code>.
 | 
						||
    Then <a href="stopping.html">stop</a> the server again by
 | 
						||
    running:</p>
 | 
						||
 | 
						||
<div class="example"><p><code>$ <em>PREFIX</em>/bin/apachectl -k stop</code></p></div>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="upgrading" id="upgrading">Upgrading</a></h2>
 | 
						||
 | 
						||
    <p>The first step in upgrading is to read the release announcement
 | 
						||
    and the file <code>CHANGES</code> in the source distribution to
 | 
						||
    find any changes that may affect your site.  When changing between
 | 
						||
    major releases (for example, from 2.0 to 2.2 or from 2.2 to 2.3),
 | 
						||
    there will likely be major differences in the compile-time and
 | 
						||
    run-time configuration that will require manual adjustments.  All
 | 
						||
    modules will also need to be upgraded to accommodate changes in the
 | 
						||
    module API.</p>
 | 
						||
 | 
						||
    <p>Upgrading from one minor version to the next (for example, from
 | 
						||
    2.2.55 to 2.2.57) is easier.  The <code>make install</code>
 | 
						||
    process will not overwrite any of your existing documents, log
 | 
						||
    files, or configuration files.  In addition, the developers make
 | 
						||
    every effort to avoid incompatible changes in the
 | 
						||
    <code class="program"><a href="./programs/configure.html">configure</a></code> options, run-time configuration, or the
 | 
						||
    module API between minor versions.  In most cases you should be able to
 | 
						||
    use an identical <code class="program"><a href="./programs/configure.html">configure</a></code> command line, an identical
 | 
						||
    configuration file, and all of your modules should continue to
 | 
						||
    work.</p>
 | 
						||
 | 
						||
    <p>To upgrade across minor versions, start by finding the file
 | 
						||
    <code>config.nice</code> in the <code>build</code> directory of
 | 
						||
    your installed server or at the root of the source tree for your
 | 
						||
    old install.  This will contain the exact
 | 
						||
    <code class="program"><a href="./programs/configure.html">configure</a></code> command line that you used to
 | 
						||
    configure the source tree.  Then to upgrade from one version to
 | 
						||
    the next, you need only copy the <code>config.nice</code> file to
 | 
						||
    the source tree of the new version, edit it to make any desired
 | 
						||
    changes, and then run:</p>
 | 
						||
 | 
						||
    <div class="example"><p><code>
 | 
						||
    $ ./config.nice<br />
 | 
						||
    $ make<br />
 | 
						||
    $ make install<br />
 | 
						||
    $ <em>PREFIX</em>/bin/apachectl -k graceful-stop<br />
 | 
						||
    $ <em>PREFIX</em>/bin/apachectl -k start<br />
 | 
						||
    </code></p></div>
 | 
						||
 | 
						||
    <div class="warning">You should always test any new version in your
 | 
						||
    environment before putting it into production.  For example, you
 | 
						||
    can install and run the new version along side the old one by
 | 
						||
    using a different <code>--prefix</code> and a
 | 
						||
    different port (by adjusting the <code class="directive"><a href="./mod/mpm_common.html#listen">Listen</a></code> directive) to test for any
 | 
						||
    incompatibilities before doing the final upgrade.</div>
 | 
						||
 | 
						||
    <p>You can pass additional arguments to <code>config.nice</code>,
 | 
						||
    which will be appended to your original <code class="program"><a href="./programs/configure.html">configure</a></code>
 | 
						||
    options:</p>
 | 
						||
 | 
						||
    <div class="example"><p><code>
 | 
						||
    $ ./config.nice --prefix=/home/test/apache --with-port=90
 | 
						||
    </code></p></div>
 | 
						||
</div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div>
 | 
						||
<div class="section">
 | 
						||
<h2><a name="thirdp" id="thirdp">Third-party packages</a></h2>
 | 
						||
 | 
						||
    <p>A large number of third parties provide their own packaged
 | 
						||
    distributions of the Apache HTTP Server for installation on
 | 
						||
    particular platforms. This includes the various Linux distributions,
 | 
						||
    various third-party Windows packages, Mac OS X, Solaris, and many
 | 
						||
    more.</p>
 | 
						||
 | 
						||
    <p>Our software license not only permits, but encourages, this kind
 | 
						||
    of redistribution. However, it does result in a situation where the
 | 
						||
    configuration layout and defaults on your installation of the server
 | 
						||
    may differ from what is stated in the documentation. While
 | 
						||
    unfortunate, this situation is not likely to change any time
 | 
						||
    soon.</p>
 | 
						||
 | 
						||
    <p>A <a href="http://wiki.apache.org/httpd/DistrosDefaultLayout">description
 | 
						||
    of these third-party distrubutions</a> is maintained in the HTTP
 | 
						||
    Server wiki, and should reflect the current state of these
 | 
						||
    third-party distributions. However, you will need to familiarize
 | 
						||
    yourself with your particular platform's package management and
 | 
						||
    installation procedures.</p>
 | 
						||
 | 
						||
</div></div>
 | 
						||
<div class="bottomlang">
 | 
						||
<p><span>Available Languages: </span><a href="./de/install.html" hreflang="de" rel="alternate" title="Deutsch"> de </a> |
 | 
						||
<a href="./en/install.html" title="English"> en </a> |
 | 
						||
<a href="./es/install.html" hreflang="es" rel="alternate" title="Espa<70>ol"> es </a> |
 | 
						||
<a href="./fr/install.html" hreflang="fr" rel="alternate" title="Fran<61>ais"> fr </a> |
 | 
						||
<a href="./ja/install.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
 | 
						||
<a href="./ko/install.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
 | 
						||
<a href="./tr/install.html" hreflang="tr" rel="alternate" title="T<>rk<72>e"> tr </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>This section is experimental!</strong><br />Comments placed here should not be expected 
 | 
						||
to last beyond the testing phase of this system, nor do we in any way guarantee that we'll read them.</div>
 | 
						||
<script type="text/javascript"><!--//--><![CDATA[//><!--
 | 
						||
var lang = 'en';
 | 
						||
var disqus_shortname = 'httpd';
 | 
						||
var disqus_identifier = window.location.href.replace(/(current|trunk)/, "2.4").replace(/\/[a-z]{2}\//, "/").replace(window.location.protocol, "http:") + '.' + lang;
 | 
						||
if (disqus_identifier.indexOf("httpd.apache.org") == -1) {
 | 
						||
    document.write('<div id="disqus_thread">\n</div>');
 | 
						||
    (function() {
 | 
						||
                var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
 | 
						||
                dsq.src = window.location.protocol + '//' + disqus_shortname + '.disqus.com/embed.js';
 | 
						||
            (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
 | 
						||
        })();
 | 
						||
} else {
 | 
						||
    document.write("Comments have been disabled for offline viewing.");
 | 
						||
}
 | 
						||
//--><!]]></script></div><div id="footer">
 | 
						||
<p class="apache">Copyright 2012 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/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
 | 
						||
if (typeof(prettyPrint) !== undefined) {
 | 
						||
    prettyPrint();
 | 
						||
}
 | 
						||
//--><!]]></script>
 | 
						||
</body></html> |