Installing Drupal on Microsoft Windows PCs
Notice: Quickstart should only be used to play with Drupal. To properly deploy Drupal on Windows scroll down to Advanced Setup.
In this section you will learn how to set up a local test site on your Windows PC. You need to do two things on your computer:
- Install the software that Drupal needs in order to run
- Install Drupal itself
You can use an installer that includes Drupal, the most popular being the Microsoft web installer.
Microsoft web installer/platform
The quickest and easiest way to install Drupal on a Windows platform is to use the Microsoft Web Platform Installer as described in detail in the installation guide.
From your Windows 2008 Server, simply navigate to the Microsoft WebPlatform Installer and click the Download button. to begin the process.
Note that the Drupal 7 version is actually Acquia Drupal, not a standard Drupal distribution. Acquia Drupal includes 30 very popular modules for building big sites. Acquia is only one of over 500 available Drupal distributions.
- Download the Web Platform Installer, the front end for downloading and installing various other software components.
- Click on the Web Platform tab to view the Frameworks and Runtime subsection. Check the box next to PHP.
- Under the Web Applications tab on the left, select Acquia Drupal. Click the Install button.
- You will see a screen revealing everything that’s about to be installed. The Installer will grab any necessary component for you if it detects that one is missing from your selection, such as MySQL.
- You will also see the Installation confirmation screen. Review the license terms of all the software components and click I Accept.
- If you are installing MySQL, you will be prompted to enter a password for your root user. If MySQL was already installed, you will be prompted to enter your password to allow the Web PI to create your applications’ databases.
- If prompted, restart your machine.
- When the downloads and installations are complete, create your databases and database users for Drupal by filling in the form fields, which will save you time by not requiring you to update your databases and edit your configuration files manually.
- Click through to the next screen to view a summary of what has been installed. Under the Drupal application will be a Launch link that will open your default web browser to the installation page (install.php for Drupal). From there you can launch Drupal.
Drupal can be used with Microsoft Internet information Services (IIS) or with Apache/NGINX.
Warning:The only production ready web server for Windows is IIS from Microsoft. Both Apache and Nginx can be used for development purposes and might be able to handle brochureware, but are NOT recommended for production usage
There are several resources that are available to you to get Drupal up and running on IIS. A search on the Drupal.org forums will usually pull up quite a number of resources. Here are a few other resources to help you get started:
A complete and detailed Installing Drupal on Windows guide for production ready setups Installing Drupal On Windows and SQL Server
A free training series discussing deployment techniques including Drush on Windows:
PHP at Scale on the Microsoft Platform
- Installing Drupal on Windows and SQL Server, January 2016
- Installing PHP, MySQL, and Drupal on Windows Server 2008 with IIS 7.0, by Joel Stidley, 2 Aug 2009
- 1. Deploying Drupal with Web Platform Installer, by Grace Francisco, Alessandro PIlotti, ferbadano, May 21, 2012.
- 8. Drupal, Memcached and Solr on Windows, by Grace Francisco, Alessandro PIlotti, ferbadano, May 21, 2012.
- 9. Drupal on IIS with SQL Server, by Grace Francisco, Alessandro PIlotti, ferbadano, May 21, 2012.
Here are a few resources on how to install Drupal on Windows Apache/NGINX:
Installing Apache (with PHP) on Windows XP (top of the page)
Installing Apache (with PHP) on Windows Vista (top of the page)
Drupal is written in the PHP scripting language. For support on how to install and use PHP on Microsoft’s IIS server, visit:
Installing Apache (with PHP) on Windows XP(bottom of the page)
Installing Apache (with PHP) on Windows Vista (bottom of the page)
Drupal 7 supports the MS database Microsoft SQL Server, see below. For Drupal 6 you'll want to use Mysql:
- MySQL - how to install Drupal on MySQL.
- Another blurb after - If you still can’t install, another way of getting Drupal up and running on Windows is to use the WAMP platform.
- Make a short php script that does a wget of your sites cron file
- Use the windows task scheduler to run it regularly
Temp, Private, and Public Files
- Make sure the file setting point to the windows temp directory and that IIS has write access to it. /tmp in unix is not the default temp directory on windows
To run Drupal on Windows with reasonable performance you should use the Wincache PHP extension and the Drupal Wincache integration Module:
If you want a quick set of instructions to follow, go to Simple install of Drupal on XAMPP. XAMPP from Apache Friends is the easiest way to get everything (Apache, PHP and MariaDB) on a Windows machine (XP and Vista). It is installed in a few minutes and you can start developing right away.
- Download XAMPP from Apache Friends at www.apachefriends.org/en/xampwindows.html.
- Extract the XAMPP files to a drive by double-clicking the XAMPP self-extracting zip archive. In the Extract to:box, type C:\ (or click the button on the right to select your C:\ drive). Click the Extract button.
- Once the files are extracted, open the extracted folder C:\xampp and run setup_xampp.bat.
- Double-click the xampp_control.exe to open the XAMPP control panel.
- Click the Start buttons next to both Apache and MariaDB.
- Test your XAMPP installation by opening the web browser and typing http://localhost or http://127.0.0.1 in the address box.
- Run XAMPP services (Apache or Drupal. Once the XAMPP page appears, go to the language section on the lefthand side under Sprachen and select English.
- Go to Tools on the lefthand side and click on phpMyAdmin. Create a new database called Drupal: under MySQL Connection Collation, select UTF8 unicode. Under Create New Database, type in Drupal.
- Once you get the message “database drupal has been created”, close phpMyAdmin.
- Set your password for MariaDB for the “root” user. Open your web browser, go to http://localhost/security. Scroll down and select http://localhost/security/xamppsecurity.php. Once the security consoles opens, type in your password and click the Password Changingbutton.
- Restart MariaDB in the control panel by clicking the Stop butting next to MariaDB, then the Start button again.
- Extract Drupal files to the C:\xampp\htdocs folder. It would be easier for future use to rename the folder “Drupal”. Open the “Drupal” folder and copy the default.settings.php file to the same folder. Rename it settings.php. Open settings.php with Wordpad and type in $db_url = ‘mysql://root:email@example.com’;. Then scroll down and enter $base_url = ‘http://localhost/drupal’;.
- Install your Drupal site and configure.
FusionLeaf Stack is a preconfigured web stack which allows you to run Drupal very quickly without have to install or configure any additional software. FusionLeaf Stack makes it very easy to test Drupal without wasting any time trying to follow complicated tutorials. It includes Nginx, MySQL, PHP, and Memcached - Full instructions can be found here.
Note: Be sure to change the default MySQL password, prior to setting up Drupal, to help prevent unauthorized access if your website will be public facing.
- Download the latest version of FusionLeaf Stack.
- Run FusionLeaf Studio.exe
- Click Automation -> FusionLeaf -> Remove CMS from Localhost folder -> Click OK
- Click Open Folder -> Webroot
- Double click on the localhost folder
- Delete index.php
- Download and extract Drupal files to the localhost folder
- Click Start to start Nginx, MySQL, and PHP
- Click Browser -> http://localhost to view the Drupal initial configuration page
- At the Set up database Drupal page, use the following database settings:
- Finish the Drupal configuration and your website will be up and running
* Database name: test
* Database username: root
* Database password: (blank)