So… you want have your voice on the internet.

The easiest way to do that is to host your site on one of the many web-hosting companies around…
… but that costs money and you will have learned nothing.

Having your own web-server eliminates the hosting costs and will give you total control over it’s content and behavior.
And we Slackers are big fans of total control.
Also, it’s a fun learning experience.

As I said before, this site is done with WordPress, which is a great tool for people (like me) who understand little or nothing about html, java and php.

We will now learn how to install WordPress on your very own server.

The first step, is to have installed and configured a LAMP server, which will serve as a back-end for our WordPress site.

First, create a new database and user so your future WordPress can store content.

mysql -u root -p
# insert the mysql's root password and you'll go into the mysql prompt

mysql> create database mysite;
mysql> grant all privileges on mysite.* to mysite@"localhost" identified by 'somepassword';
mysql> fush privileges;
mysql> quit

Next, download WordPress and place it on your custom directory and set ownership.

cd /srv/www/
wget http://wordpress.org/latest.tar.gz
tar zxvf latest.tar.gz
mv wordpress mysite.com
chown -R apache:apache /srv/www/mysite.com/

Last step is to setup WordPress to work with the database you created.

Rename the sample config file

mv /srv/www/mysite.com/wp-config-sample.php /srv/www/mysite.com/wp-config.php

Now, use nano to edit file /srv/www/mysite.com/wp-config.php like so

/** The name of the database for WordPress */
define('DB_NAME', 'mysite');

/** MySQL database username */
define('DB_USER', 'mysite');

/** MySQL database password */
define('DB_PASSWORD', 'somepassword');

/** MySQL hostname */
define('DB_HOST', 'localhost');

Finaly, restart your webserver…

/etc/rc.d/rc.httpd restart

…and point your browser to the install script at http://mysite.com/wp-admin/install.php and follow instructions.

Enjoy your new WordPress server.