UserDirectoryPHP

Differences between revisions 7 and 8
Revision 7 as of 2006-04-28 10:12:11
Size: 1552
Editor: rrcs-24-153-226-7
Comment:
Revision 8 as of 2006-04-28 10:14:26
Size: 1514
Editor: rrcs-24-153-226-7
Comment:
Deletions are marked like this. Additions are marked like this.
Line 15: Line 15:
{{{sudo a2enmod actions
sudo a2enmod rewrite
{{{sudo a2enmod rewrite
Line 20: Line 19:
sudo a2enmod ssl}}} }}}

Introduction

This procedure installs PHP 5 and Apache 2 and configures Apache (and the shell) to run PHP scripts as CGIs. This is an alternative to using PHP as a module in Apache.

Procedure

Install Apache 2 and PHP 5. {{{sudo apt-get install apache2 php5-cgi }}}

Configure PHP 5 to run .php scripts from the shell. {{{sudo update-binfmts --install PHP /usr/bin/php5-cgi --extension php }}}

Enable necessary Apache modules.

{{{sudo a2enmod rewrite sudo a2enmod suexec sudo a2enmod include sudo a2enmod userdir }}}

Enable Apache's handling of PHP files. Add the following line to /etc/apache2/apache2.conf {{{AddHandler cgi-script .php }}}

Configure the userdir module. Uncomment the following lines in /etc/apache2/apache2.conf. {{{UserDir public_html UserDir disabled root

<Directory /home/*/public_html>

</Directory>}}}

Add the ExecCGI option. The block should now appear as below. {{{UserDir public_html UserDir disabled root

<Directory /home/*/public_html>

</Directory>}}}

Reload the Apache configuration. {{{sudo /etc/init.d/apache2 force-reload }}}

Notes

If implemented as described, this configuration requires accessing phpMyAdmin via {{{http://localhost/phpmyadmin/index.php }}} http://localhost/phpmyadmin/ will not work.