To get a WordPress instance up an running on your own Linux server takes only a few minutes. Even though I run this blog on BlogEngine.net, I’ve deployed a couple dozen WordPress based sites and can attest to the fact that its a fantastic Blog and light CMS platform with hundreds of plug-in extensions that can get almost any type of web site up and running in no time, I’ve even seen light weight e-commerce plug-ins, although I would still recommend Magento if your looking for true e-commerce. Based on my preferred flavor of Linux, CentOS, here’s the steps to get up and running with WordPress in less than 10 minutes.
1. If this is your first WordPress instance you’ll need to install Apache, PHP and MySQL along with a couple utilities to make life easy.
#install required applications and utlities, use yum list to display installed packages, i.e. yum list php*
yum install httpd php php-pear php-mysql mysql-server mysql wget zip
#start Apache and MySQL services on boot up, use chkconfig –list to display current service start settings for each run level
chkconfig httpd on
chkconfig mysqld on
#start services without reboot
service httpd start
service mysqld start
#set MySQL root login password, i.e. SECUREPASSWORD
mysqladmin -u root password SECUREPASSWORD
#create php info web page to confirm Apache/PHP components installation, after you’ve created the index.php file you should be able to access your web server and receive the PHP Version info page.
echo “<?php phpinfo(); ?>” > /var/www/html/index.php
After you’ve successfully installed and configured Apache, PHP and MySQL you can set up your WordPress instance.
2. Login to MySQL and create your new WordPress site database instance.
#login to mysql cli
mysql -u root -p
#create new database
create database mywordpresssite;
#create new user and grant permissions to new database
grant all privileges on mywordpresssite.* to ‘mywordpressuser’@'localhost’ identifed by ‘myuserpassword’
#refresh to effect new privileges
#close out of mysql cli
3. Download and install WordPress application files.
#create new web site directory
#download and extract latest build of wordpress files
#move application files to web site root and remove unzip directory
mv wordpress/* ./
#create content directories and set permissions
mkdir wp-content/uploads wp-content/cache
chown apache:apache wp-content/uploads wp-content/cache
4. Define virtual host entry in Apache config for new web site (required to support multiple web site instances on a single IP address). Requires virtualhost support has been enabled in Apache.
#edit apache config file to add new VirtualHost section
#confirm name-based virtual hosting is enabled
#add following to end of configuration file
CustomLog logs/mywordpresssite.com-access_log common
#restart apache to apply new virtual host setting
5. Configure WordPress using install wizard.
#set web site root directory writable by apache to create configuration file
chown apache:apache /var/www/html/mywordpresssite
#open web browser and access new web site at http://www.mywordpresssite.com to setup through the WordPress configuration wizard
#missing wp-config.php file message, click Create a Configuration File
#enter database name, user and password information for mywordpresssite database created previously
#click Run the install to define your mywordpresssite properties including web site name, contact and admin login information
#change ownership of web site root directory back to root
chown root:root /var/www/html/mywordpresssite
Now you can access your new My WordPress Site or log in to the admin portal to start blogging.