Last updated November 24, 2015. Created on April 25, 2008.
Edited by jmolivas, martinjbaker, natts, iantresman. Log in to edit this page.

Drupal is available in two supported versions: the most recent and the previous. Currently that is Drupal 8 and Drupal 7. The Recommended releases are the latest stable releases of either version.
Drupal 8 has just (November 2015) come out of development and is now ready for production use. To learn more about versions, see the Drupal version information page.

To install a Drupal site in a language other than English, see You can also add additional languages after the installation.
Note: If you install Drupal 8, you can choose the installation language as the first option in the interface of the installation script itself.

You can download and extract Drupal in four different ways:

So, follow one of the methods below for downloading, and then...

Before continuing to the next page ...

The base URL for your Drupal installation is set in your web server's configuration file. You need to know this URL before proceeding to the next steps of the installation.
If you are installing Drupal on your local machine, the base URL may be http://localhost.
If you're installing Drupal to a web server, your base URL may be a specific domain name, such as


Drush is a command line tool to maintain and administer Drupal sites. It offers the most convenient way of downloading Drupal by using a single command: pm-download (or its alias dl):

drush dl drupal

This command will download the recommended version into the current folder. Check drush help dl to see additional options such as how to download a specific version.

Drupal Console

Drupal Console is a command line tool to generate code, debug and interact Drupal sites. It offers a convenient way of downloading Drupal by using a single command: site:new:

# specifying version to download
drupal site:new 8.0.0

# select version from interactive mode
drupal site:new

This command will download the specified version into the current folder. Check drupal site:new --help or visit the documentation page at

From the command line


Log into your server on using ssh and navigate to the directory from which you will be serving your Drupal site.
On many *nix computers the path from the server's root will be /var/www/html, so cd /var/www/html. On a shared server, or a server that hosts multiple domains, the path will be different (try cd ~/www or cd ~/public_html). If you are unsure of the directory, ask your hosting provider for assistance.

Download Drupal from the command line, for example using wget or curl.
The commands are, respectively:



curl -O

Note: The curl command option is the upper case letter "O" and not the numeral that stands for zero.

Replace with the link for the version you want to install.
The links to the recommended versions are available on Drupal Core project page, where you can copy them from the Download column.
All other versions are available on the Releases for Drupal core page.

Extracting files

Type the following command and replace "x.x" with your downloaded version's number:

tar -xzvf drupal-x.x.tar.gz

Then remove the compressed version of the file by using the following command:

rm drupal-x.x.tar.gz

Moving to its intended location

Now you need to move the contents of the drupal-x.x directory one level "up" into the web server's document root or your public HTML directory:

mv drupal-x.x/* drupal-x.x/.htaccess ./

For Drupal 7, also add:
mv drupal-x.x/.gitignore ./

Drupal 8 comes with several additional hidden files that all need to be moved as well.
Alternative, you can extract the the tar archive directly into the correct directory by typing:
tar --strip-components=1 -xzvf drupal-x.x.tar.gz

The files from the directory you downloaded and decompressed have now been moved up a level into your web directory, and you can delete the (now empty) drupal-x.x directory:

rmdir drupal-x.x

Using FTP

You can download Drupal using your favorite FTP-tool.

  1. Download a Drupal tar.gz or zip file to your local computer from by clicking on the link for the version you want to install.
  2. When you download the file, your browser will ask you what to do with it. Choose "Extract" and extract it to your local computer. Or, save the file and extract it using your computer's software (7-zip for example) that deals with archive files. The exact steps to do this differ by software, but you should end up with a folder/directory called something like "drupal-7.32" on your local computer.
  3. Use FTP to transfer the entire contents of this folder, including hidden files like .htaccess, to your hosting account's HTML document root. Details of how to do this depend on your FTP software.

    Note: Drupal 8 includes about 10 times as many files as earlier versions (due to its new framework), that may take significantly longer to upload to a server by FTP than earlier versions. A faster way to upload Drupal 8 as a single ZIP files, suitable for some hosts is described here.

Looking for support? Visit the forums, or join #drupal-support in IRC.


martinjbaker’s picture

tar --strip-components=1 -xzvf drupal-x.x.tar.gz

eliminates the need to move files after extracting them, why not just give that code and then delete the entire "Moving to its intended location" section?

romdouze’s picture

Hi everyone,
Congratulations and thank you for this awesome work !

I followed this PHP recommended settings :

Setting: allow_url_fopen = off
Reason: This is a security issue: see here

but when i try to install Drupal console using

curl -LSs | php

here is the result:

Drupal Console Installer

[-] Environment Check
[*] You have a supported version of PHP (>= 5.4.10).
[*] You have the "phar" extension installed.
[*] You have a supported version of the "phar" extension.
[*] You have the "openssl" extension installed.
[ ] Notice: The "phar.readonly" setting needs to be off to create Phars.

[*] The "detect_unicode" setting is off.
[ ] The "allow_url_fopen" setting needs to be on.

SAme resulte when trying to install composer:

curl -sS | php
#!/usr/bin/env php
Some settings on your machine make Composer unable to work properly.
Make sure that you fix the issues listed below and run this script again:

The allow_url_fopen setting is incorrect.
Add the following to the end of your `php.ini`:
    allow_url_fopen = On

The php.ini used by your command-line PHP is: /etc/php.ini
If you can not modify the ini file, you can also run `php -d option=value` to modify ini values on the fly. You can use -d multiple times.

Did i miss something?

Thanks you again !