mirror of
https://github.com/sigmasternchen/php-doc-en
synced 2025-03-17 17:38:54 +00:00

- All id attributes are now xml:id - Add docbook namespace to all root elements - Replace <ulink /> with <link xlink:href /> - Minor markup fixes here and there git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@238160 c90b9560-bf6c-de11-be94-00142212c4b1
172 lines
6.1 KiB
XML
172 lines
6.1 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!-- $Revision: 1.7 $ -->
|
|
<sect1 xml:id="install.unix.apache2" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<title>Apache 2.0 on Unix systems</title>
|
|
<para>
|
|
This section contains notes and hints specific to Apache 2.0 installs
|
|
of PHP on Unix systems.
|
|
</para>
|
|
|
|
&warn.apache2.compat;
|
|
|
|
<para>
|
|
You are highly encouraged to take a look at the
|
|
<link xlink:href="&url.apache2.docs;">Apache Documentation</link> to get
|
|
a basic understanding of the Apache 2.0 Server.
|
|
</para>
|
|
|
|
&install.snippet.apache2.compat;
|
|
|
|
<para>
|
|
Download the most recent version of <link xlink:href= "&url.apache;">
|
|
Apache 2.0</link> and a fitting PHP version from the above mentioned places.
|
|
This quick guide covers only the basics to get started with Apache 2.0
|
|
and PHP. For more information read the
|
|
<link xlink:href="&url.apache2.docs;">Apache Documentation</link>.
|
|
The version numbers have been omitted here, to ensure the
|
|
instructions are not incorrect. You will need to replace the
|
|
'NN' here with the correct values from your files.
|
|
</para>
|
|
<example>
|
|
<title>
|
|
Installation Instructions (Apache 2 Shared Module Version)
|
|
</title>
|
|
<screen>
|
|
<![CDATA[
|
|
1. gzip -d httpd-2_0_NN.tar.gz
|
|
2. tar xvf httpd-2_0_NN.tar
|
|
3. gunzip php-NN.tar.gz
|
|
4. tar -xvf php-NN.tar
|
|
5. cd httpd-2_0_NN
|
|
6. ./configure --enable-so
|
|
7. make
|
|
8. make install
|
|
|
|
Now you have Apache 2.0.NN available under /usr/local/apache2,
|
|
configured with loadable module support and the standard MPM prefork.
|
|
To test the installation use your normal procedure for starting
|
|
the Apache server, e.g.:
|
|
/usr/local/apache2/bin/apachectl start
|
|
and stop the server to go on with the configuration for PHP:
|
|
/usr/local/apache2/bin/apachectl stop.
|
|
|
|
9. cd ../php-NN
|
|
|
|
10. Now, configure your PHP. This is where you customize your PHP
|
|
with various options, like which extensions will be enabled. Do a
|
|
./configure --help for a list of available options. In our example
|
|
we'll do a simple configure with Apache 2 and MySQL support. Your
|
|
path to apxs may differ, in fact, the binary may even be named apxs2 on
|
|
your system.
|
|
|
|
./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql
|
|
|
|
11. make
|
|
12. make install
|
|
|
|
If you decide to change your configure options after installation,
|
|
you only need to repeat the last three steps. You only need to
|
|
restart apache for the new module to take effect. A recompile of
|
|
Apache is not needed.
|
|
|
|
Note that unless told otherwise, 'make install' will also install PEAR,
|
|
various PHP tools such as phpize, install the PHP CLI, and more.
|
|
|
|
13. Setup your php.ini
|
|
|
|
cp php.ini-dist /usr/local/lib/php.ini
|
|
|
|
You may edit your .ini file to set PHP options. If you prefer having
|
|
php.ini in another location, use --with-config-file-path=/some/path in
|
|
step 10.
|
|
|
|
If you instead choose php.ini-recommended, be certain to read the list
|
|
of changes within, as they affect how PHP behaves.
|
|
|
|
14. Edit your httpd.conf to load the PHP module. The path on the right hand
|
|
side of the LoadModule statement must point to the path of the PHP
|
|
module on your system. The make install from above may have already
|
|
added this for you, but be sure to check.
|
|
|
|
For PHP 4:
|
|
|
|
LoadModule php4_module modules/libphp4.so
|
|
|
|
For PHP 5:
|
|
|
|
LoadModule php5_module modules/libphp5.so
|
|
|
|
15. Tell Apache to parse certain extensions as PHP. For example,
|
|
let's have Apache parse the .php extension as PHP. You could
|
|
have any extension(s) parse as PHP by simply adding more, with
|
|
each separated by a space. We'll add .phtml to demonstrate.
|
|
|
|
AddType application/x-httpd-php .php .phtml
|
|
|
|
It's also common to setup the .phps extension to show highlighted PHP
|
|
source, this can be done with:
|
|
|
|
AddType application/x-httpd-php-source .phps
|
|
|
|
16. Use your normal procedure for starting the Apache server, e.g.:
|
|
|
|
/usr/local/apache2/bin/apachectl start
|
|
|
|
]]>
|
|
|
|
</screen>
|
|
</example>
|
|
<para>
|
|
Following the steps above you will have a running Apache 2.0 with
|
|
support for PHP as <literal>SAPI</literal> module.
|
|
Of course there are many more configuration options available for both,
|
|
Apache and PHP. For more information use
|
|
<command>./configure --help</command> in the corresponding source
|
|
tree. In case you wish to build a multithreaded version of Apache 2.0
|
|
you must overwrite the standard MPM-Module <filename>prefork</filename>
|
|
either with <filename>worker</filename> or <filename>perchild</filename>.
|
|
To do so append to your configure line in step 6 above either the option
|
|
<option role="configure">--with-mpm=worker</option> or
|
|
<option role="configure">--with-mpm=perchild</option>. Take care about
|
|
the consequences and understand what you are doing. For more information
|
|
read the Apache documentation about the <link xlink:href="&url.apache2.mpm;">
|
|
MPM-Modules</link>.
|
|
</para>
|
|
<note>
|
|
<para>
|
|
If you want to use content negotiation, read the
|
|
<link linkend="faq.installation.apache.multiviews">Apache MultiViews
|
|
FAQ</link>.
|
|
</para>
|
|
</note>
|
|
<note>
|
|
<para>
|
|
To build a multithreaded version of Apache your system must support threads.
|
|
This also implies to build PHP with experimental
|
|
Zend Thread Safety (ZTS). Therefore not all extensions might be available.
|
|
The recommended setup is to build Apache with the standard
|
|
<filename>prefork</filename> MPM-Module.
|
|
</para>
|
|
</note>
|
|
</sect1>
|
|
|
|
<!-- Keep this comment at the end of the file
|
|
Local variables:
|
|
mode: sgml
|
|
sgml-omittag:t
|
|
sgml-shorttag:t
|
|
sgml-minimize-attributes:nil
|
|
sgml-always-quote-attributes:t
|
|
sgml-indent-step:1
|
|
sgml-indent-data:t
|
|
indent-tabs-mode:nil
|
|
sgml-parent-document:nil
|
|
sgml-default-dtd-file:"../../manual.ced"
|
|
sgml-exposed-tags:nil
|
|
sgml-local-catalogs:nil
|
|
sgml-local-ecat-files:nil
|
|
End:
|
|
vim600: syn=xml fen fdm=syntax fdl=2 si
|
|
vim: et tw=78 syn=sgml
|
|
vi: ts=1 sw=1
|
|
-->
|