- 1 Things to Know Before You Begin
- 2 Famous 5-Minute Install
- 3 Detailed Instructions
- 3.1 Step 1: Download and Extract
- 3.2 Step 2: Create the Database and a User
- 3.3 Step 3: Set up wp-config.php
- 3.4 Step 4: Place the files
- 3.5 Step 5: Run the Install Script
- 4 Common Installation Problems
- 5 Installation Instructions in Other Languages
- 6 Installing Multiple Blogs
- 7 Installing WordPress Locally
- 8 Resources
WordPress is well known for its ease of installation. Under most circumstances installing WordPress is a very simple process and takes less than five minutes to complete. The following installation guide will help you, whether you go for the Famous 5 Minute Installation, or require the more detailed installation guide.
- Things to Know Before You Begin Installing WordPress
- The Famous 5-Minute Installation
- Detailed Installation Instructions
- Common Installation Problems
- WordPress in Your Language
- Installing WordPress in Your Language
- How to Install Multiple Blogs
- How to Install WordPress Locally
- Getting Started with WordPress (much more installation info)
Things to Know Before You Begin
Before you begin the install, there are few things you need to have and do.
Things You Need For The Installation
You need access to your site and its directory and software to proceed with the installation. These are:
- Access to your web server (via shell or FTP)
- A text editor
- An FTP Client (if you need to install WordPress on a remote server)
- Your web browser of choice
Things You Need to Do For The Installation
Begin your installation by:
- Checking to ensure that you and your web host has the minimum requirements to run WordPress.
- Download the latest release of WordPress.
- Unzip the downloaded file to a folder on your hard drive.
- Print this page out so you have it handy during the installation.
Famous 5-Minute Install
Here's the quick version of the instructions, for those that are already comfortable with performing such installations. More detailed instructions follow.
- Download and unzip the WordPress package, if you haven't already.
- Create a database for WordPress on your web server, as well as a MySQL user who has all privileges for accessing and modifying it.
- Rename the wp-config-sample.php file to wp-config.php.
- Open wp-config.php in your favorite text editor and fill in your database details.
- Place the WordPress files in the desired location on your web server:
- If you want to integrate WordPress into the root of your domain (e.g. http://example.com/), move or upload all contents of the unzipped WordPress directory (but excluding the directory itself) into the root directory of your web server.
- If you want to have your WordPress installation in its own subdirectory on your web site (e.g. http://example.com/blog/), rename the directory wordpress to the name you'd like the subdirectory to have and move or upload it to your web server. For example if you want the WordPress installation in a subdirectory called "blog", you should rename the directory called "wordpress" to "blog" and upload it to the root directory of your web server.
Hint: If your FTP transfer is too slow read how to avoid FTPing at : Step 1: Download and Extract.
- Run the WordPress installation script by accessing wp-admin/install.php in your favorite web browser.
- If you installed WordPress in the root directory, you should visit: http://example.com/wp-admin/install.php
- If you installed WordPress in its own subdirectory called blog, for example, you should visit: http://example.com/blog/wp-admin/install.php
That's it! WordPress should now be installed.
- Example WordPress installation
- Visual tutorial on how to install Wordpress
- Installing WordPress-An Audio-Visual Presentation
Step 1: Download and Extract
Download and unzip the WordPress package from http://wordpress.org/download/.
- If you will be uploading WordPress to a remote web server, download the WordPress package to your computer with your favorite web browser and unzip the package.
- If you have shell access to your web server, and are comfortable using console-based tools, you may wish to download WordPress directly to your web server using wget (or lynx or another console-based web browser) if you want to avoid FTPing:
- wget http://wordpress.org/latest.tar.gz
- Then unzip the package using:
tar -xzvf latest.tar.gz
The WordPress package will extract into a folder called wordpress in the same directory that you downloaded latest.tar.gz.
- If you do not have shell access to your web server, or you are not comfortable using console-based tools, you may wish to deploy WordPress directly to your web server using ZipDeploy.
Step 2: Create the Database and a User
If you are using a hosting provider, you may already have a WordPress database set up for you, or there may be an automated setup solution to do so. Check your hosting provider's support pages or your control panel for clues about whether or not you'll need to create one manually.
Main article: Using cPanel
If your hosting provider uses cPanel, you may follow these instructions to create your WordPress username and database.
- Log in to your cPanel.
- Click MySQL Databases.
- If a user relating to WordPress does not already exist under the Users section, create one:
- Chose a username for WordPress ('wordpress' is good) and enter it in the UserName field.
- Choose a difficult-to-guess password (ideally containing a combination of upper- and lower-case letters, numbers, and symbols), and enter it in the Password field.
- Write down the username and password you chose.
- Click Add User.
- If a database relating to WordPress does not already exist under the Databases section, create one:
- Choose a name for your WordPress database ('wordpress' or 'blog' are good), enter it in the Db field, and click Add Db.
- Under Databases, select your WordPress username from the User dropdown, then select your WordPress database from the Db dropdown. Make sure All is checked under Privileges, then click Add User to Db.
- When you return to the main MySQL Account Maintenance screen, cPanel will list information about the database you just created. You should see the username you just added to the database (with ALL PRIVILEGES), as well as a few sample Connection Strings for you to use in Perl or PHP scripts to connect to the database. The PHP code will have the following format:
$dbh = mysql_connect("hostname", "username", "<PASSWORD HERE>") or die ("message"); mysql_select_db("databasename");
- Write down the values of hostname, username, databasename, and the password you chose. (Note that hostname will usually be localhost.)
If your web server has phpMyAdmin installed, you may follow these instructions to create your WordPress username and database.
Note: These instructions are written for phpMyAdmin 2.6.0; the phpMyAdmin user interface can vary slightly between versions.
- If a database relating to WordPress does not already exist in the Database dropdown on the left, create one:
- Choose a name for your WordPress database ('wordpress' or 'blog' are good), enter it in the Create new database field, and click Create.
- Click the Home icon in the upper left to return to the main page, then click Privileges. If a user relating to WordPress does not already exist in the list of users, create one:
- Click Add a new User.
- Chose a username for WordPress ('wordpress' is good) and enter it in the User name field. (Be sure Use text field: is selected from the dropdown.)
- Choose a difficult-to-guess password (ideally containing a combination of upper- and lower-case letters, numbers, and symbols), and enter it in the Password field. (Be sure Use text field: is selected from the dropdown.) Re-enter the password in the Re-type field.
- Write down the username and password you chose.
- Leave all options under Global privileges at their defaults.
- Click Go.
- Return to the Privileges screen and click the Check privileges icon on the user you've just created for WordPress. In the Database-specific privileges section, select the database you've just created for WordPress under the Add privileges to the following database dropdown. The page will refresh with privileges for that database. Click Check All to select all privileges, and click Go.
- On the resulting page, make note of the host name listed after Server: at the top of the page. (This will usually be localhost.)
Using the MySQL Client
If you have shell access to your web server, are comfortable with using the command line, and your MySQL user has the permissions to create MySQL users and databases, you may follow the example session below to create your WordPress username and database.
$ mysql -u adminusername -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 5340 to server version: 3.23.54 Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql> CREATE DATABASE databasename; Query OK, 1 row affected (0.00 sec) mysql> GRANT ALL PRIVILEGES ON databasename.* TO "wordpressusername"@"hostname" -> IDENTIFIED BY "password"; Query OK, 0 rows affected (0.00 sec) mysql> FLUSH PRIVILEGES; Query OK, 0 rows affected (0.01 sec) mysql> EXIT Bye $
In the above:
- adminusername will typically be root, unless you have another high-privileged account set up.
- wordpress or blog are good values for databasename.
- wordpress is a good value for wordpressusername.
- hostname will usually be localhost. If you don't know what this value should be, check with your system administrator. If you are the system administrator, figure out what this value should be.
- password should be a difficult-to-guess password, ideally containing a combination of upper- and lower-case letters, numbers, and symbols.
Write down the values you used for databasename, wordpressusername, hostname, and password.
Step 3: Set up wp-config.php
For the next part, the code you will be looking to change is as follows:
// ** MySQL settings ** // define('DB_NAME', 'wordpress'); // The name of the database define('DB_USER', 'username'); // Your MySQL username define('DB_PASSWORD', 'password'); // ...and password define('DB_HOST', 'localhost'); // 99% chance you won't need to change this value define('DB_CHARSET', 'utf8'); define('DB_COLLATE', '');
- Returning to where you extracted the WordPress package in Step 1, rename the file wp-config-sample.php to wp-config.php.
- Open the renamed wp-config.php file in your favorite text editor and fill in the following information, per the example above:
- The name of the database you created for WordPress in Step 2 .
- The username you created for WordPress in Step 2.
- The password you chose for the WordPress username in Step 2.
- The hostname you determined in Step 2 (usually localhost, but not always).
- The database character set, normally should not be changed. See Editing wp-config.php for details.
- The database collation should normally be left blank. See Editing wp-config.php for details.
- Save the file.
For more extensive details, and step by step instruction for creating the configuration file, please refer to Editing wp-config.php.
Step 4: Place the files
Now you will need to decide where on your web site you'd like your blog to appear:
- In the root directory of your web site. (For example, http://example.com/)
- In a subdirectory of your web site. (For example, http://example.com/blog/)
Note: The location of your root web directory in the filesystem on your web server will vary across hosting providers and operating systems. Check with your hosting provider or system administrator if you do not know where this is.
In the Root Directory
- If you need to upload your files to your web server, use your favorite FTP client to upload all the contents of the wordpress directory (but not the directory itself) into the root directory of your web site.
- If your files are already on your web server, and you are using shell access to install WordPress, move all of the contents of the wordpress directory (but not the directory itself) into the root directory of your web site.
In a Subdirectory
- If you need to upload your files to your web server, rename the wordpress directory to your desired name, then use your favorite FTP client to upload the directory to your desired location within the root directory of your web site.
- If your files are already on your web server, and you are using shell access to install WordPress, move the wordpress directory to your desired location within the root directory of your web site, and rename the directory to your desired name.
Step 5: Run the Install Script
Using your favorite web browser, visit wp-admin/install.php within the directory into which you just installed WordPress on your web site.
- If you installed into a subdirectory called blog, you would visit http://example.com/blog/wp-admin/install.php.
- If you installed into the root directory of your web site, you would visit http://example.com/wp-admin/install.php.
The following screenshots show how the installation progresses. Notice in the second screen, Entering the details, you enter your Weblog title and your e-mail address. Also displayed is a check-box asking if you would like your blog to appear in search engines like Google and Technorati. Leave the box checked if you would like your blog to be visible to everyone, including search engines, and uncheck the box if you want to block search engines, but allow normal visitors. Note all this information can be changed later in your Administration Panels.
Install Script Troubleshooting
- If you get an error about the database when you run the install script:
Common Installation Problems
The following are some of the most common installation problems. For more information and troubleshooting for problems with your WordPress installation, check out FAQ Installation and FAQ Troubleshooting.
- I see lots of Headers already sent errors. How do I fix this?
- You probably introduced a syntax error in editing wp-config.php.
- Download wp-config.php (if you don't have shell access).
- Open it in your favorite text editor.
- Check that the first line contains nothing but <?php, and that there is no text before it (not even whitespace).
- Check that the last line contains nothing but ?>, and that there is no text after it (not even whitespace).
- Save the file, upload it again if necessary, and reload the page in your browser.
- My page comes out gibberish. When I look at the source I see a lot of "<?php ?>" tags.
- If the <?php ?> tags are being sent to the browser, it means your PHP is not working properly. All PHP code is supposed to be executed before the server sends the resulting HTML to your web browser. (That's why it's called a preprocessor.) Make sure your web server meets the requirements to run WordPress, that PHP is installed and configured properly, or contact your hosting provider or system administrator for assistance.
- I keep getting an Error connecting to database message but I'm sure my configuration is correct.
- Try resetting your MySQL password manually. If you have access to MySQL via shell, try issuing:
SET PASSWORD FOR 'wordpressusername'@'hostname' = OLD_PASSWORD('password');
- If you are using a version of MySQL prior to 4.1, use PASSWORD instead of OLD_PASSWORD. If you do not have shell access, you should be able to simply enter the above into an SQL query in phpMyAdmin. Failing that, you may need to use your host's control panel to reset the password for your database user.
- My image/MP3 uploads aren't working.
- If you use the Rich Text Editor on a blog that's installed in a subdirectory, and drag a newly uploaded image into the editor field, the image may vanish a couple seconds later. This is due to a problem with TinyMCE (the rich text editor) not getting enough information during the drag operation to construct the path to the image or other file correctly. The solution is to NOT drag uploaded images into the editor. Instead, click and hold on the image and select "Send to Editor."
Installation Instructions in Other Languages
For installation instructions in other languages, see WordPress in Your Language.
- Kurdish (Sorany)كوردی
- Codex Français ou Français
- Persian (Farsi) فارسی
- Screencast (video) in italiano
- Português BR
- Instalacja WordPress Polish
Installing Multiple Blogs
Detailed information about Installing Multiple Blogs is available.
Installing WordPress Locally
If you have a sufficiently powerful home computer and a sufficiently fast broadband connection, you may want to avoid certain hosting charges by using your own computer as a server. The following tutorials will show you how to setup a server environment and install WordPress on your home computer.
- Install WordPress Locally on MacOS X with MAMP (easy)
- Install WordPress Locally on MacOS X (advanced)
- Install WordPress Locally on Windows XP with XAMPP (easy)
- Install WordPress Locally on Gentoo Linux (easy)
- Install WordPress Locally on Debian Etch using .deb (easiest)
- Install WordPress Locally on Debian Linux (easy)
- Install WordPress Locally on Ubuntu Linux with LAMP (easy)
- Coevolving Innovations guide for installing on a web host with Fantastico and cPanel (at Wordpress 2.2.1)