Configuring LAMP (Linux, Apache, MySQL, PHP) on a Ubuntu system is one of the easier things to do on Linux. The automation is incredible how a single install command and everything just works. That said a minor and as far as I can tell undocumented change can cause much headache. In particular the way /home/*/public_html accounts work.  In 10.04 someone decided that for security reasons PHP should be disabled on these folders by default. Annoyingly there is no question in the setup or prompt to say, by the way we disabled PHP for ALL your users, did you want this?.

That said, it is relatively painless to fix:


sudo nano /etc/apache2/mods-available/php5.conf
Look for the lines that look like:
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
Change to look like:
#    <IfModule mod_userdir.c>
#        <Directory /home/*/public_html>
#            php_admin_value engine Off
#        </Directory>
#    </IfModule>
Finally restart apache:
sudo /etc/init.d/apache2 restart
Whew. Now can I have the last 30 minutes of my life back? 🙂