This section contains notes and hints specific to installing PHP on » Debian GNU/Linux.
While you can just download the PHP source and compile it yourself, using Debian's packaging system is the simplest and cleanest method of installing PHP. If you are not familiar with building software on Linux, this is the way to go.
The first decision you need to make is whether you want to install Apache 1.3.x or Apache 2.x. The corresponding PHP packages are respectively named libapache-mod-php* and libapache2-mod-php*. The steps given below will use Apache 1.3.x. Please note that, as of this writing, there is no official Debian packages of PHP 5. Then the steps given below will install PHP 4.
PHP is available in Debian as CGI or CLI flavour too, named respectively php4-cgi and php4-cli. If you need them, you'll just have to reproduce the following steps with the good package names. Another special package you'd want to install is php4-pear. It contains a minimal PEAR installation and the pear commandline utility.
If you need more recent packages of PHP than the Debian's stable ones
or if some PHP modules lacks the Debian official repository, perhaps
you should take a look at » http://www.apt-get.org/.
One of the results found should be
» Dotdeb. This unofficial repository
is maintained by » Guillaume Plessis
and contains Debian packages of the most recent versions of PHP 4 and PHP 5.
To use it, just add the to following two lines to your
/etc/apt/sources.lists and run apt-get
deb http://packages.dotdeb.org stable all
deb-src http://packages.dotdeb.org stable all
The last thing to consider is whether your list of packages is up to date. If you have not updated it recently, you need to run apt-get update before anything else. This way, you will be using the most recent stable version of the Apache and PHP packages.
Now that everything is in place, you can use the following example to install Apache and PHP:
APT will automatically install the PHP 4 module for Apache 1.3, and all its dependencies and then activate it. If you're not asked to restart Apache during the install process, you'll have to do it manually :
# /etc/init.d/apache stop
# /etc/init.d/apache start
In the last section, PHP was installed with only core modules. This may not be what you want and you will soon discover that you need more activated modules, like MySQL, cURL, GD, etc.
When you compile PHP from source yourself, you need to activate modules via the configure command. With APT, you just have to install additional packages. They're all named 'php4-*' (or 'php5-*' if you installed PHP 5 from a third party repository).
As you can see from the last output, there's a lot of PHP modules that you can install (excluding the php4-cgi, php4-cli or php4-pear special packages). Look at them closely and choose what you need. If you choose a module and you do not have the proper libraries, APT will automatically install all the dependencies for you.
If you choose to add the MySQL, cURL and GD support to PHP the command will look something like this:
APT will automatically add the appropriate lines to your
You'll only have to stop/start Apache as previously to activate the modules.
If you see the PHP source instead of the result the script should
produce, APT has probably not included
/etc/apache/conf.d/php4 in your Apache 1.3
configuration. Please ensure that the following line is present in your
/etc/apache/httpd.conf file then stop/start Apache:
php.ini, as seen before. APT may fail during the installation of the additional module, due to a confusing debconf configuration.