Wednesday, March 10, 2010

LAMP Stack / Joomla / WordPress

Linux Apache MySQL PHP (the makings of a common server)

If you are a developer for Wordpress or Joomla you need to setup an environment (local server) to run these programs on your computer so that you can test things without having to be on the internet.

The developers at Ubuntu are a godsend and have made the actual LAMP stack installation heaps easier than in the past. In applications > accessories > terminal :
sudo apt-get install lamp-server^

wow, that is so much easier than having to dual boot with turn-key or going through the old process

Finishing off the details is pretty straight forward. Briefly the steps are listed below, for detailed steps with screenshots, hand holding, and all the superfulous writing you could hope for go to TuxTweaks

phpmyadmin is supposed to make life easier too, so let's install that while the ball is rolling
sudo apt-get install libapache2-mod-auth-mysql phpmyadmin
 Select apache2, and dbconfig-common using tab and space bar.

Cool, now we can actually set up where we want to host all of the files
I've decided to go with /webdev/joomla and /webdev/wordpress. Both will be located in my home folder. Again if you need serious hand holding go visit TuxTweaks for this tutorial with screenshots.

cd
mkdir webdev
cd /webdev
mkdir joomla wordpress
cd /etc/apache2/sites-available
sudo cp default joomla
sudo cp default wordpress
sudo gedit joomla

In this gedit window you need to get yours to look like this
ServerAdmin webmaster@localhost
ServerName joomla

DocumentRoot /home/yourID/webdev/joomla/
Directory /
Options FollowSymLinks
AllowOverride None
/Directory

Options Indexes FollowSymLinks MultiViews
AllowOverride All

Repeat with wordpress instead of joomla in there.

sudo a2ensite joomla wordpress
sudo gedit /etc/hosts
Then enter in:
127.0.0.1 localhost joomla wordpress

And back in terminal
sudo /etc/init.d/apache2 reload

If you get a reload error like me then:
echo "ServerName localhost" | sudo tee /etc/apache2/conf.d/fqdn
And then run the reload script from above. And now we need to change some permissions!
sudo chown -R USERNAME /etc/phpmyadmin


Ok! Now we can download the newest version of Joomla and Wordpress and extract them to their respective folders. We still need to set up a mysql database for each so let's do it (almost seeing the light at the end of the tunnel).
Pull up firefox and navigate to "http://localhost/phpmyadmin/"
Log in with root, and whatever password you created.
Now click on privileges at the top > Add new User, and enter in the following:
Joomla
local> localhost
password>
password>

and then click the radio button for creating a new database as well (middle one), then find go at the bottom and click that.
Repeat for wordpress.

Now when you navigate to http://joomla/ or http://wordpress you get an installation page. It should be pretty straightforward. The mysql database is the what you created earlier(joomla or wordpress), username you just made (joomla or wordpress), you have your password. On Joomla they try and get a little tricky at one part, in the bottom box they want you to type joomla again.

To remove the installation directory for joomla (it will prompt you):
sudo rm -R webdev/joomla/installation/

No comments: