WordPress is one of the most popular blog and content management systems deployed on the Internet. It is built in PHP and is typically deployed within a LAMP (Linux, Apache, MySQL, PHP) environment.
WordPress can be quickly and easily deployed on Debian-based systems using the aptitude package management system. This process can take as little as 10 minutes, after which point you'll have a basic WordPress blog set up and running.
1. Connect to your server as usual via SSH.
2. Update your aptitude database by running:
sudo apt-get update
sudo apt-get upgrade
3. Install the Apache web server
sudo apt-get install apache2
4. Install PHP and PHP's MySQL client:
sudo apt-get install php5
sudo apt-get install php5-mysql
5. Stop/start Apache to ensure PHP is enabled:
6. Install the MySQL database server:
sudo apache2ctl stop
sudo apache2ctl start
sudo apt-get install mysql-server
7. The MySQL server installation will ask you to set a root password. Pick a good, secure one, and write it down - you'll need it later!
8. Download the latest WordPress installation and set it up in your web server root directory.
tar xvzf latest.tar.gz
mv wordpress/* .
9. Set the permissions so that the web server process can write to the directory. Note that this is a security risk, but it is required to make WordPress work normally. For more information please read the WordPress hardening guide.
chown -R www-data.www-data /var/www
10. Create the database for WordPress to use
You'll be prompted for the root password - enter it here. You'll be at the MySQL prompt, where you can need to type the following commands:
mysql> create database wordpress;
11. Open up your web browser and your IP address in the address bar (you can get your IP address from the mPanel dashboard). Note that you can also set up DNS to connect to your WordPress install like you would a normal site; that process is explained elsewhere.
12. If all has gone well, you should be greeted with the WordPress installation screen. From here, it's just a case of following the prompts to complete the setup of WordPress.