Overview
Are you ready to build your very own website? It’s not as hard as you may think! A computer with an internet connection is all that’s required. Oh, and not to mention a healthy dose of patience!
This is a straightforward tutorial/guide which walks you through the entire process: installation and set-up, content management and basic configurations. Okay, enough chit-chat, let’s begin!
Obtaining the Tools
The softwares you’re going to be using are all free, open source and available online:
- Drupal is a web content management system (WCMS). Basically, it’s an application which facilitates the creation of web contents (blogs, forums, polls, etc.), manages/controls the contents, usually by a point-and-click work-flow. Best of all, Drupal requires little or no programming skills.
Drupal 6.12 Download – http://drupal.org/project/drupal
- XAMPP (cross-platform, Apache, MySQL, PHP, Perl) is a web server application packaged with Apache HTML web server, MySQL (database management), PHP (a scripting language) and Perl (a programming language.)
XAMPP for Linux Download – http://www.apachefriends.org/en/xampp-linux.html
Pre-Installation
By now, you should have already downloaded the following files:
- xampp-linux-1.7.1.tar.gz
- drupal-6.12.tar.gz
Note: Unless you know what you’re doing, it’s recommended that you’re using the same files to avoid any confusion. If, for example, when newer versions are released, simply type in the correct file name when installing in the “Install XAMPP” and “Install Drupal” sections.
Now, this tutorial is done on a Linux system (Ubuntu), not Windows. Remember earlier when I told you the tools I’d use are all free? Well, Ubuntu is an excellent alternative operating system to Windows! Give it a try, you may like it!
Install XAMPP
We install XAMPP by extracting its content to a folder named “opt”:
- Locate the file xampp-linux-1.7.1.tar.gz you’ve just downloaded.
- If it’s not on your Desktop, move the file there.
- Open the Terminal, enter the following command:
sudo tar xvfz Desktop/xampp-linux-1.7.1.tar.gz -C /opt
Start XAMPP
You installed XAMPP in the previous section, now it’s time to start it:
- Open the Terminal, enter the following command:
sudo /opt/lampp/lampp start
You should see the following lines in the terminal if everything is done correctly:
XAMPP: Starting Apache with SSL (and PHP5)…
XAMPP: Starting MySQL…
XAMPP: Starting ProFTPD…
XAMPP for Linux started.
Test XAMPP
Okay, so how do you know if XAMPP is currently active?
- Open your favourite web broswer.
- Enter the following address:
http://localhost
This page should pop up:
Click the Status link to see what’s running:
Install Drupal
Let’s install Drupal by extracting its content to “opt/lampp/htdocs”:
- Locate the file drupal-6.12.tar.gz.
- If it’s not on your Desktop, move the file there.
- Open the Terminal, enter the following command:
sudo tar xvfz Desktop/drupal-6.12.tar.gz -C /opt/lampp/htdocs
- Let’s rename “drupal-6.12″ folder to a cleaner name, “drupal”.
- Enter the following command:
sudo mv /opt/lampp/htdocs/drupal-6.12 /opt/lampp/htdocs/drupal
Test Drupal
Okay, we can now verify whether Drupal has installed correctly:
- Open your web broswer.
- Enter the following address:
http://localhost/drupal
You should see this page:
Create a Database
In this section, we create a new database for Drupal to store data:
- Open your web browser.
- Enter the following address:
http://localhost/phpmyadmin/
- In the Create new database text box, type in a name for your database (I named mine “creativebushido”.)
- Click the Create button.
Configure Drupal
Having completed the installation of XAMPP, Drupal, and a brand spanking new database, we can finally go ahead and configure Drupal:
- Open your web browser.
- Enter the following address:
http://localhost/drupal
- Click the Install Drupal in English link.
- You will be likely to ecounter the following page:
Don’t fret! First, we make a copy of default.settings.php and rename it to settings.php.
- Open the Terminal, enter the following command:
sudo cp /opt/lampp/htdocs/drupal/sites/default/default.settings.php /opt/lampp/htdocs/drupal/sites/default/settings.php
Next, we need to grant permissions to the settings.php file so that it’s writeable:
- Enter the following command (press Enter after each line):
cd /opt/lampp/htdocs/drupal/sites
sudo chmod a+w default
sudo chmod a+w default/settings.php
Finally, we need to increase our PHP memory limit from 8M to 16M.
- Open the Terminal and type:
sudo nano /opt/lampp/etc/php.ini
Look for the memory_limit parameter and change the number 8 to 16.
Once you’ve changed it, exit the text editor by holding down Ctrl and press x. Type y to save the file.
Because you’ve just made changes to the PHP file, you need to restart XAMPP to update it:
- Open the Terminal, enter the following command:
sudo /opt/lampp/lampp stop
- To start XAMPP again, enter the following command:
sudo /opt/lampp/lampp start
That should have solved all the problems! Okay, now you should be able to see the Database configuration page in your browser:
Notice that I have entered a name for my database, the same name I’d used earlier. Make sure you do the same.
Once you clicked the Save and continue button on the Set up database page, you will be directed to the Configure site page, like the picture below:
For security purposes, it tells you to remove write permissions to the settings.php file. Let’s do that:
- Open the Terminal, enter the following command:
sudo chmod a-w /opt/lampp/htdocs/drupal/sites/default/settings.php
Finally! You are now ready to enter some important informations for your new web site.
Fill out the the required information for the Site information and Administration account sections. Make sure you remember the username and password you’ve entered!
Once all the informations are filled out, click the Save and continue button.
Voila! Give yourself a pat on the back! You have just completed installing Drupal on your computer!
For now, you can begin building your site. Everything you’re doing right now is offline. Once you have everything to your liking, you can deploy the final product live online.
I hope this has been useful. If you have any technical issues, I strongly recommend that you make use of Drupal’s excellent Community web site!








Thanks, I am new to Linux and Drupal but don’t want to fall back on Windows as the default database server. Your instructions were quite complete to get started.
I’m glad that it helps!
simply awesome … a step by step procedure to install Drupal.I got the entire thing up and running under 45mins
.Thanks creative bushido
You’re very welcome!
please help me
when i install xampp i dont get the page in the browser u have shown…when i enter http://localhost/ i only get to see “IT WORKS” but no page is displayed….
can u plz tell why?
hey man thanks for ur post….
i m having one prob, when i install drupal and enter the address “http://localhost/drupal” it say “not found”…can u plz tell what can be the reason?
and also when i install XAMPP, the page u showed is not displayed but only “it works” is shown on the page?
waiting….thanx
Hi!
I was following the instructions very carefully, but when I had to test XAMPP there was all the time page load error saying that connection was refused.
I don’t know what’s the problem!
Can someone help me, please?
Can you take a snap shot of the screen?
Hi!
This is the text from the Page Load Error:
Failed to Connect
The connection was refused when attempting to contact localhost.
Though the site seems valid, the browser was unable to establish a connection.
* Could the site be temporarily unavailable? Try again later.
* Are you unable to browse other sites? Check the computer’s network connection.
* Is your computer or network protected by a firewall or proxy? Incorrect settings can interfere with Web browsing.
I
Hey,
thanks fir the very detailed explanation about drupal on xampp
got it all running in 10 minutes.
im testing open atrium on drupal, i heared good things about it.
thanks – Yonit
hi
thanks for your step by step procedure for drupal
Hi,
I xampp-linux-1.7.2.tar.gz and installed successfully.
Then downloaded drupal 6.6
while installing drupal by running the install.php
I am getting error like
Deprecated:Function ereg() …
can you please advise how to resolve it ….
thanks
Murali.
Murali,
You’re supposed to run the command in the terminal, not by clicking the install.php file.
I am getting the same error as well. when I go to http://localhost/drupal I get
Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
Warning: Cannot modify header information – headers already sent by (output started at /opt/lampp/htdocs/drupal-6.13/includes/file.inc:895) in /opt/lampp/htdocs/drupal-6.13/includes/install.inc on line 618
Warning: Cannot modify header information – headers already sent by (output started at /opt/lampp/htdocs/drupal-6.13/includes/file.inc:895) in /opt/lampp/htdocs/drupal-6.13/includes/install.inc on line 619
I have the same error: Deprecated: Function ereg() is deprecated in /opt/lampp/htdocs/drupal-6.13/includes/file.inc on line 895
when loading http://localhost/drupal
XAMPP is ok. Any ideas?
Seems there is an issue with drupal 6.13 and xampp 1.7.2. If you use drupal 6.12 and xampp 1.7.1 everything works perfect. More specifically, it appears to be an issue with php5 and drupal involving .htaccess and php.ini. Beyond the scope of this forum. Thanks Bushido for the excellent how to.
Yes… Drupal does not support PHP 5.3 … here more info http://drupal.org/node/527548
Do you know how can I change the version of my PHP from 5.3 to 5.2 ? I am using Ubuntu 9.04 and installing drupal-6.14
Help would be much aprecciated…
I had the same problem. I did a quick tweak to the line of code that was deprecated. I replace the ereg function call with…
preg_match(‘/’.$mask.’/', $file)
which seems to have worked as a quick fix. It isn’t the best solution but works for a home development environment.
Thanks a lot Vincent, it works perfectly!!!
Owsome man…….. after having a solid search of 2 days i am now able to install xampp on my ubuntu. i am having one q can anybody tell me that at where i have to put my php site to run them at local host plzzzzzzzz.
If you put it in /opt/lampp/htdocs/yoursite you will then be able to see it from your browser as localhost/yoursite
is that what you where asking?
Только вот вчера на эту тему думал, так что пост как нельзя в тему!