XAMPP – All in one web server Installation and Configuration in Debian

XAMPP is an easy to install Apache distribution containing MySQL, PHP and Perl. XAMPP is really very easy to install and to use – just download, extract and start.

XAMPP Supported Platforms

a version for Linux systems (tested for Ubuntu, SuSE, RedHat, Mandrake and Debian),

a version for Windows 98, NT, 2000, 2003 and XP,

a beta version for Solaris SPARC (developed and tested under Solaris 8),
and a beta version for MacOS X.

This MacOSX and Solaris versions of XAMPP are still in the first steps of development. Use at you own risk!

XAMPP for Linux Packages

The distribution for Linux systems (tested for SuSE, RedHat, Mandrake and Debian) contains: Apache, MySQL, PHP & PEAR, Perl,ProFTPD, phpMyAdmin, OpenSSL, GD, Freetype2, libjpeg, libpng, gdbm, zlib, expat, Sablotron, libxml, Ming, Webalizer, pdf class, ncurses, mod_perl, FreeTDS, gettext, mcrypt, mhash, eAccelerator, SQLite and IMAP C-Client.

Install XAMPP in Debian

First you need to download the latest version of XAMPP from here .At the time of writing this article XAMPP version is 1.5.5a.

wget http://kent.dl.sourceforge.net/sourceforge/xampp/xampp-linux-1.5.5a.tar.gz

Now you should be having xampp-linux-1.5.5a.tar.gz file in your downloaded location

Go to a Linux shell and login as root:

$su –

Extract the downloaded archive file to /opt

#tar xvfz xampp-linux-1.5.5a.tar.gz -C /opt

XAMPP is now installed below the /opt/lampp directory.

Start XAMPP Server

To start XAMPP simply Use the following command

#/opt/lampp/lampp start

Starting XAMPP 1.5.5a…
LAMPP: Starting Apache…
LAMPP: Starting MySQL…
LAMPP started.

Test Your XAMPP Installation

OK, that was easy but how can you check that everything really works? Just type in the following URL at your favourite web browser:




XAMPP Security Configuration

XAMPP is not meant for production use but only for developers in a development environment. The way XAMPP is configured is to be open as possible and allowing the developer anything he/she wants. For development environments this is great but in a production environment it could be fatal.

Here a list of missing security in XAMPP:

The MySQL administrator (root) has no password.

The MySQL daemon is accessible via network.

ProFTPD uses the password “lampp” for user “nobody”.

PhpMyAdmin is accessible via network.

Examples are accessible via network.

MySQL and Apache running under the same user (nobody).

To fix most of the security weaknesses simply call the following command

#/opt/lampp/lampp security

It starts a small security check and makes your XAMPP installation more secure.

Switching between PHP4 and PHP5

Because such very new versions like PHP 5 always should be handled with care XAMPP team decided to include both current versions of PHP into XAMPP since version 1.4.7: PHP 5.x and PHP 4.x. If you find out your PHP application doesn’t work with PHP 5 you will be able to switch back easily to PHP 4.

By the following command you can switch “back” to PHP 4.x

#/opt/lampp/lampp php4

And with the following command you can switch back to PHP 5.x

#/opt/lampp/lampp php5

If you forgot which version of PHP is in use simply use phpinfo() or call this command

#/opt/lampp/lampp phpstatus

Start And Stop XAMPP Server Services


Starts XAMPP.


Stops XAMPP.


Stops and starts XAMPP.


Starts only the Apache.


Starts the Apache SSL support. This command activates the SSL support permanently, e.g. if you restarts XAMPP in the future SSL will stay activated.


Starts only the MySQL database.


Starts the ProFTPD server. Via FTP you can upload files for your web server (user “nobody”, password “lampp”). This command activates the ProFTPD permanently, e.g. if you restarts XAMPP in the future FTP will stay activated.


Stops the Apache.


Stops the Apache SSL support. This command deactivates the SSL support permanently, e.g. if you restarts XAMPP in the future SSL will stay deactivated.


Stops the MySQL database.


Stops the ProFTPD server. This command deactivates the ProFTPD permanently, e.g. if you restarts XAMPP in the future FTP will stay deactivated.


Starts a small security check programm.

For example: To start Apache with SSL support simply type in the following command (as root)

#/opt/lampp/lampp startssl

You can also access your Apache server via SSL under https://localhost or https://serveripaddress

Important Configuration Files And Directories

opt/lampp/bin/ – The XAMPP commands home. /opt/lampp/bin/mysql calls for example the MySQL monitor.

/opt/lampp/htdocs/ – The Apache DocumentRoot directory.

/opt/lampp/etc/httpd.conf – The Apache configuration file.

/opt/lampp/etc/my.cnf – The MySQL configuration file.

/opt/lampp/etc/php.ini – The PHP configuration file.

/opt/lampp/etc/proftpd.conf – The ProFTPD configuration file. (since 0.9.5)

/opt/lampp/phpmyadmin/config.inc.php – The phpMyAdmin configuration file.

Stopping XAMPP

To stop XAMPP server use the following command

#/opt/lampp/lampp stop

You should now see:

Stopping LAMPP 1.5.5a…
LAMPP: Stopping Apache…
LAMPP: Stopping MySQL…
LAMPP stopped.

And XAMPP for Debian Linux is stopped.

Uninstall XAMPP

To uninstall XAMPP just use the following command

#rm -rf /opt/lampp

Sponsored Link

12 thoughts on “XAMPP – All in one web server Installation and Configuration in Debian

  1. Thanks for this nice tut. I used xampp on a productio server for some time. Hardened it a bit and was very pleased not to be forced to install all the stuff myself. Also, i liked the fact being able to save one single directory (/opt/lammp and below) in order to back up config and content in one go.
    I quit using it after i ran into upgrading problems from one edition to the next. Maybe it’s alot better now, but i won’t switch back. People interested in using it should consult the (very good) forum in advance just to check outif there are still issues with upgrading.

    Besides from that, that package can save you A LOT of configuration headaches.

  2. When we use xampp to run our web based application, it hangs suddenly. We need to restart it. We are unable to find the solution.

  3. Can anyone tell me how to make mysql accessable via network if its set to be unaccessable.
    Because when i run the following command
    /opt/lampp/lampp security
    then after setting password it skips the Mysql setting
    plz help me?

  4. Hi

    i am trying to install Eventum with Xampp in fedora9. The issues is i am not able to configure xampp with eventum. Can any one help me in this. I would like have the full steps of configuration steps.

    Plese replay to my e-mail id [email protected]

  5. I configured my sever, but still i am helpless to test my file (programs ) please help me what i have to do………next .
    i’ll be very thank full in this regards.
    This error comes when i test something….
    Object not found!

    The requested URL was not found on this server. If you entered the URL manually please check your spelling and try again.

    If you think this is a server error, please contact the webmaster.

    Error 404

    Wed 19 Oct 2011 05:25:36 AM CEST
    Apache/2.2.21 (Unix) DAV/2 mod_ssl/2.2.21 OpenSSL/1.0.0c PHP/5.3.8 mod_apreq2-20090110/2.7.1 mod_perl/2.0.5 Perl/v5.10.1

Leave a comment

Your email address will not be published. Required fields are marked *