Development configuration tips for Ubuntu

I just setup my machine at home with Ubuntu 8.10 (desktop) which was so easy think I saved hours off the time it would normally take with Windows. So much is already installed and ready to go and with apt (or the Synaptic package manager) it’s super quick to download and install extra things things like MySQL, PHP, Apache, Java etc

Here are some notes which helped me out when configuring some of these development tools.

This assumes you’ve already installed Apache and MySQL, for notes on installing these I found this article to be a great resource.

If you get this message when you restart Apache, “Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName“, edit /etc/apache2/conf.d/fqdn and add “ServerName localhost”:

sudo nano /etc/apache2/conf.d/fqdn

Load the mod_rewrite module for Apache
sudo a2enmod rewrite

Enable your Apache vhosts
I already had all my vhosts defined in separate .conf files on my windows box, so I copied them all into /etc/apache2/sites-available and setup symbolic links from my /etc/apache2/sites-enabled:

sudo ln -s /etc/apache2/sites-available/mysite.conf /etc/apache2/sites-enabled/mysite.conf

Download and install PHP
sudo apt-get install php5 libapache2-mod-php5

PHP connector to MySQL
sudo apt-get install libapache2-mod-auth-mysql php5-mysql

Install MySQL Administrator
sudo apt-get install mysql-admin

Install subversion
sudo apt-get install subversion

I am also using Pulse to manage my eclipse development environment so I needed Java which I got from the Synaptic Package Manager (sun-java6-bin). Pulse is super cool, I used the standard cfeclipse profile with the addition of the PHP PDT (for developing in PHP).

Post a Comment or Leave a Trackback

9 Comments

  1. December 13, 2008 at 3:01 am | Permalink

    I love Ubuntu/Debian aswell. To make it a tiny bit easier Debian/Ubuntu has a2ensite which will manually create the sym link for sites-enabled ie: a2ensite mysites.conf

  2. December 13, 2008 at 10:04 am | Permalink

    Ain’t it more easy to install LAMP with “tasksel” ;) ?

  3. December 13, 2008 at 10:54 am | Permalink

    @starenka – nice, I didn’t know of tasksel before! For other interested in what this is you can read more here: https://help.ubuntu.com/community/Tasksel

    I wonder if you still need to activate particular modules like mod_rewrite, or the php connector to mysql.

    I guess if you don’t want to use tasksel you can always do:

    sudo aptitude install apache2 php5-mysql libapache2-mod-php5 mysql-server

  4. December 13, 2008 at 2:13 pm | Permalink

    I don’t quite remember. They’re installed for sure, but maybe not enabled as default. Enabling php or mod_rewrite is just matter of symlinking those files from mod_available to mod_enabled. You got it done in a jiffy.

  5. December 13, 2008 at 3:08 pm | Permalink

    You may need to activate individual mods (after you apt-get them) but again there is a inbuilt tool a2enmod modName that will create the symlinks for you.

  6. December 13, 2008 at 4:42 pm | Permalink

    I’m pretty sure, you don’t have to apt-get them. You already have them if you use tasksel. So the most easy way seems to tasksel and use a2enmod… right? ;)

  7. Luke
    December 15, 2008 at 8:24 pm | Permalink

    Doesn’t Ubuntu favor aptitude over apt-get nowadays? I believe apt-get was deprecated and only available for backwards compatibility. I could be wrong through…

  8. December 15, 2008 at 8:31 pm | Permalink

    @Luke – I haven’t heard that and it looks as though (judging by the examples) apt-get is more common on the Intrepid (8.10) page: http://ubuntuguide.org/wiki/Ubuntu:Intrepid

  9. December 15, 2008 at 9:37 pm | Permalink

    Hi Michael, Nice tutorial.

    One thing – I’m pretty sure you don’t need: libapache2-mod-auth-mysql – it’s only if you are using http authentication against a mysql server. You don’t need it if you just want php to talk to mysql, for that you just need php5-mysql

    @Luke – re aptitude over apt-get. aptitude is just a console ui for apt-get, under the hood it still calls apt-get to do installs etc. aptitude is comparable to synaptic. I.e. it’s great when you are not sure what you need to install as you can search friendly descriptions. But apt-get is the man for command line work :-)

    Cheers,
    Mark

One Trackback

  1. [...] I just setup my machine at home with Ubuntu 8.10 which was so easy think I saved hours off the time it would normally take with Windows. So much is already installed and ready to go and with apt it?s super quick to download and install extra things things like MySQL, PHP, Apache, Java etc More here [...]

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*