Translation(s): none


WordPress is a free and open source (GNU GPLv2 or later) blogging tool and a content management system (CMS) based on PHP and MySQL. Features include a plug-in architecture and a template system.

Basic Installation guide for Wheezy

# apt-get install wordpress curl apache2 mysql-server

Set the mysql admin root user password when prompted

Create a site

# nano /etc/apache2/sites-available/wp

Add this content:-

        Alias /wp /usr/share/wordpress
        Alias /wp/wp-content /var/lib/wordpress/wp-content
        <Directory /usr/share/wordpress>
            Options FollowSymLinks
            AllowOverride Limit Options FileInfo
            DirectoryIndex index.php
            Order allow,deny
            Allow from all
        </Directory>
        <Directory /var/lib/wordpress/wp-content>
            Options FollowSymLinks
            Order allow,deny
            Allow from all
        </Directory>

Enable the site

# a2ensite wp

Restart the webserver

# service apache2 reload

Create /etc/wordpress/config-$DM.php (where $DM is the domain name e.g. if the fully qualified domain name is debianwordpress.dev create /etc/wordpress/config-dev.php)

# nano /etc/wordpress/config-dev.php

Add this content:-

   1 <?php
   2 define('DB_NAME', 'wordpress');
   3 define('DB_USER', 'wordpress');
   4 define('DB_PASSWORD', 'password');
   5 define('DB_HOST', 'localhost');
   6 define('WP_CONTENT_DIR', '/var/lib/wordpress/wp-content');
   7 ?>

<!> replace password with a suitably secure password

Create a file to hold the database creation instructions

# nano ~/wp.sql

Add this content:-

   1 CREATE DATABASE wordpress;
   2 GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER
   3 ON wordpress.*
   4 TO wordpress@localhost
   5 IDENTIFIED BY 'password';
   6 FLUSH PRIVILEGES;

<!> replace password with your "suitably secure password"

Create the database:-

# cat ~/wp.sql | mysql --defaults-extra-file=/etc/mysql/debian.cnf

Navigate to the wordpress directory in browser e.g.:- http://debianwordpress.dev/wp which redirects to http://debianwordpress.dev/wp/wp-admin/install.php where you'll see the "classic" wordpress 5 minute install page (actually a 5 second install thanks to the Debian packaging)

<!> replace debianwordpress.dev with your domain name (or localhost if running on the same box as your browser).

At time of writing this provides WordPress v3.6.1. WordPress v3.7.1 is available in Testing and Unstable. I haven't tested it but it should install fine on Wheezy.

Upgrading the installed WordPress version

Automated FTP upgrade

<!> Untested.

Update page FTP details

Manual upgrade

Completed manual upgrade

See also