Product Review: XAMPP, an Apache Distribution

 in
Can doing a LAMP installation really be so easy as to require only two steps?

XAMPP is a collection of free software for installing and using the Apache Web server. Basically, it is an Apache distribution that includes the Apache Web server, MySQL, PHP, Perl an FTP server and phpMyAdmin. XAMPP is available for Linux, Solaris and Windows. According to the Apache Friends Web site, "The philosophy behind XAMPP is to build an easy-to-install distribution for developers to get into the world of Apache."

I discovered XAMPP while searching for an easier way to upgrade to PHP 4.3.10. A colleague of mine had a server running Red Hat 9, and he had asked me for help in doing the PHP upgrade. Red Hat is no longer supporting that particular version, however, and no RPM upgrades were readily available. Rather than compile Apache and PHP from source, I decided to give XAMPP a chance.

I must admit that I was skeptical when I first visited the XAMPP Web site. I'm not one to buy into the idea that Linux is more complicated to administer than Windows is, as the XAMPP site claims. But, I also didn't believe that installing Apache, PHP, Perl and MySQL would be nearly as easy as the Web site claimed, "just download, extract and start".

I was dramatically wrong. The XAMPP installation involved two steps. First, I downloaded XAMPP for Linux from the site. Second, from the command line, I went to the directory where the XAMPP download was saved and issued this command:

tar xzvf xampp-linux-1.4.11.tar.gz -C /opt

That was it. No, I did not leave out any steps. With those two steps complete, XAMPP was installed in /opt/lampp.

You can start the newly installed applications by issuing /opt/lampp/lampp. This command starts up Apache with PHP 5.0.3, MySQL 4.1.8 and ProFTP. To stop all the currently running applications, use /opt/lampp/lampp stop.

The server I was working on did not need MySQL, however, nor did I want to have ProFTP running. Fortunately, individual start and stop commands are provided by XAMPP for each of the applications offered. To start individual applications, use any of the following commands:

  • /opt/lampp/lampp startapache

  • /opt/lampp/lampp startmysql

  • /opt/lampp/lampp startftp

One addition to the above list is /opt/lampp/lampp startssl, which enables SSL support in Apache.

The stop commands, as I'm sure you've guessed, are:

  • /opt/lampp/lampp stopapache

  • /opt/lampp/lampp stopmysql

  • /opt/lampp/lampp stopftp

XAMPP was compiled specifically for developers, and it is an extremely easy way for developers to set up a local LAMP installation for the applications they are developing. In fact, one of the great uses of XAMPP is its ability to switch between PHP 4 and PHP 5. I have spoken with many developers who have informed me that applications they developed for PHP 4 do not work properly under PHP 5. XAMPP is a great way for these developers to switch easily between the two versions to test their application's migration to PHP 5. The commands to switch between PHP 4 and 5 are /opt/lampp/lampp php4 and /opt/lampp/lampp php5.

In addition to the previously mentioned applications, the default installation also includes several demo PHP applications and a handful of Web-based tools. Figure 1 shows a browser window pointed at a site running XAMPP.

Figure 1. Default XAMPP Page

As you can see, the Web-based tools offered by XAMPP include phpMyAdmin, a PHP-based MySQL administration tool; phpSQLLiteAdmin, a PHP-based tool to administer the embedded SQL database; and Webalizer, a site statistic tool written in C.

All in all, XAMPP is a great development tool. The ease with which anyone can install XAMPP certainly helps to dispel the myth that Linux applications are hard or complicated to install. In addition, the demo applications provided in the XAMPP distribution can help new developers find their way in using Apache, PHP and Perl. I look forward to working more with the XAMPP tools and showing this great collaborative collection to other developers.

______________________

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

product Review: XAMPP, an Apache Distribution

kpss's picture

thank for articles,i use linux

hydac

jasen's picture

great documentation for Xampp for Linux. Gives a thumb up On SU!

installing xampp as a service on Redhat Ent 4.0

Ashley Mothershaw's picture

Hi,

I have been using xampp for quite a while now, both on Windows and on Redhat. My Linux knowledge is not as exstensive as my wintel knowledge so my question is how do you install xampp (or its componants) as a service. I need MySQL, Apache & the ftp software to auto start

I am using version 6.3B

thanks in advance

Ash

What about the Windows side?

Anonymous's picture

What I would like to see is a comparison [benchmark, easy of install/use, etc] of a WAMP stack, such as the Apache-based Web-Developer Server with a Linux solution. I think many would be surprised by the results.

Documentation

Griffin's picture

Is anybody troubled by lack of XAMPP documentation in English? I'm considering XAMPP but Firepages (AU) is supported in English.

documentation

Joe D.'s picture

I would definatly recommend XAMPP over Firepages. If you need help there is a great community to be found at: http://www.apachefriends.org/f/index.php?c=7

Question regarding installation of XAMPP

Eugene's picture

I want to try to use XAMPP for the system that I am about to develop based on another existing system written in JSP.

Our server had already been installed before with Apache and Tomcat because our web system was developed using JSP. Now we want to re-develop some modules of the system using PHP (don't ask why, hehe).

I was wondering if the current installation of Apache and Tomcat will be overwritten by XAMPP? We still need to use most parts of the system written in JSP, and so we must not remove the Apache and Tomcat installed and configured in our linux box.

Will there be problems here if I try to install XAMPP in our linux box? Will it have conflict with the existing Apache and Tomcat?
I hope someone can help me. Thanks. :)

thumbs up

Mike's picture

Two thumbs up for XAMPP. I use it since several months for local developement. What I really like is that you can update your LAMPP environment very easy no matter if your distribution provides the packages or not. It's pretty cool that you can switch betwenn PHP4 and PHP5 so you can be sure that you scripts work in both major versions. If you do web developement do yourself a favour and check XAMPP.

Can't wait to try this

Anonymous's picture

A windows alternative is Phpdev (http://www.firepages.com.au/) which I have used for local development for some years now, but I can't wait to try XAMPP on a linux box. Inspiring article!

I prefer XAMPP, because

Anonymous's picture

I prefer XAMPP, because installation is really easy. And I like the feature of switching between PHP 4 and 5.

In my pocket !

Kris's picture

I now have 3 new directories on my USB Memory stick :
xampp-linux
xampp-windows
xampp-solaris

Great Work !

k.

It is as easy as ...

Anonymous's picture

Download.
Extract.
/opt/lampp/lampp start

Very simple. I've been out of PHP development for over a year, and am very excited about getting back into it. XAMPP certainly makes it a lot easier!

Peace,
Phillip

Great piece of software! Sham

Anonymous's picture

Great piece of software! Shame it isn't yet fully fitted for production environment.I'd gladly pay for it!

I have used this in production for several years now

Anonymous's picture

Not sure what you mean, not ready for production, I have been using it for a production website for several years.

Absolutely! We use XAMPP on

Anonymous's picture

Absolutely!
We use XAMPP on several servers, two of them production.
Yes - sure, you have to tweak some of the settings to get max. performance and security, but no more and probably less than you would have to with new installations of the included apps.

XAMPP a Champion!

sjallipalli's picture

I agree with the author here, having used xampp for last 3 years, it iss incredibly flexible, upgrades to all the software is a breeze and the forum and support mechanism is also fantastic. Hey all this and Free! can' beat that, if you tweak it enough you can get good performance too.

XAMPP is worth checking out

Chris Bratlien's picture

Good Article.

IBM also publishes a nice article on XAMPP, located here.

Also, if you'll excuse the plug, I wrote an open source Calorie Counting program called DropAFew using XAMPP as the foundation for my PHP development.

XAMPP

John White's picture

Thanks for the IBM link.I am using the softwre on both my USB and my personal computer

I discovered XAMPP while

Cristiano's picture

I discovered XAMPP while searching for an easier way to upgrade to PHP 4.3.10. A colleague of mine had a server running Red Hat 9, and he had asked me for help in doing the PHP upgrade. Red Hat is no longer supporting that particular version, however, and no RPM upgrades were readily available.

Any docs on hardening xampp for production?

hboner's picture

Hi,

I was wondering if there are any documentation on hardening xampp for a production environment.

If anyone has that information would be very grateful.

Thanks
HB

I'm looking for hardening info too

Kyle's picture

HB, I'm looking for hardening info too. I'm new to linux but so far I love it. Trying to create a lamp server but there are so many was to do it. Xampp was very easy to install and their security script is great but they still say not to use it for production.

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix