What is XAMPP
There are a number of AMP type packages around. This article is aimed at explaining what exactly an AMP package, is, which packages are available, and take a more in-depth look at the XAMPP offering, and what differentiates it from the others.
AMP – What does this mean?
The term AMP includes any software package containing the following:
- Apache (the Web Server)
- My SQL Server (the Database management system, or Database Server)
- P – any of PHP, Perl or Python (All programming languages used in Web development)
So, AMP is an acronym, and refers to any software package which contains all of these individual components.
All AMP packages would contain some of the following software and features:
- Apache HTTP Server (All must have)
- My SQL Server (All must have)
- PHP ( All have this support)
- SQLLite Manager (Not all have this)
- PHP MyAdmin (most but not all include this)
- Mod_Perl ( not all support Perl)
- Zend Optimizer (a PHP Accelerator which not all packages include)
- Open SSL (Open source implementation of the protocols for SSL – Secure Socket Layers : not included in all AMP packages)
AMP packages also vary in their licensing. – Some are commercially developed packages, while most are free software available on GPL (General Public License)
Another differentiation is the way the package is installed. Only about half of the available AMP packages are portable. A portable package is one which is not dependent on the operating system itself (although it may require a specific OS) , so it does not write any system files during installation. It may simply be copied onto a hard drive, flash drive, or any other storage device and can run directly from there, in much the same way as old DOS files did.
Only two AMP packages are portable and contain all of the packages in the above list. These are WAMPP and XAMPP
So what differentiates these two packages? Simply the Operating System (OS) – the W in WAMPP tells us that it runs only on the Windows OS. On the other hand, the X in XAMPP tells us that it is Cross-Platform, meaning that it will run on any OS, such as Windows, Mac OS, Linux, or Solaris.
This gives XAMPP an advantage over WAMPP, in that you may use it on any of your computers, no matter what OS they use, and if you change OS there is no need to download another AMP package.
Now that we have established that XAMPP is not only free, but contains every possible option – which not all AMP packages do – and the same version will run on whatever OS you decide to use it on, let us take a closer look at what it contains, and what this can do for you.
XAMPP was initially conceived to give Web Developers a means to test their projects in an off-line environment: no need to upload to a Web Server and run “live” to test.
It worked so well that it has become commonly used on live Web Servers
Installing: – Installing could not be quicker or simpler. It requires only a single .zip, .tar or .exe file to be downloaded and run. In fact, installing XAMPP is far simpler and quicker the downloading and installing each of the components individually. On top of that, once downloaded and installed there is no setup required – it is simply ready to run.
If you want to delete XAMPP from your system, simply delete the directory folder, and it is gone! There are no registry entries to worry about, so it really is that simple. A word of warning here – if you are installing it on a Windows platform, and opt to use the Windows Installer, then the above will not be true. This is due to Windows Installer, rather than XAMPP itself – so if you do install using Windows installer, then use the uninstall feature if you uninstall, just to be sure you remove the history of the installation from your registry files.
If you have ever tried installing Apache Server, you will know it is not that easy to install an set up. Try to add PHP and Perl and integrate with your Apache setup, and it becomes even more tricky.
That is what makes the installation of XAMPP so amazing: quick, simple, and all the setup and integration is already done for you!
If there is no setup required, how do you know that it has downloaded (although the file is so small) and installed properly? How can you test that it is working? Well, the good folks as XAMPP even thought of that – some sample programs are included, there is a small CD collection program (written in PHP using MySQL) and a small guest book software (written in Perl) and several other demonstration utilities.
What are the drawbacks – surely not everything can be “perfect”?
The only thing to be careful of, when using XAMPP, is a result of it being developed for developers to use in a development environment.
Because the developer needs to be able to do anything during development, without needing to change settings, XAMPP comes with all options turned on, and little in the way of the security that would be required in a live environment.
If you want to run your XAMPP in a live environment, than take the appropriate action.
- Run the XAMPP Security Console and assign passwords
- If accessible from the internet, then go to http://localhost/security/with the security console you can set a password for the MySQL user "root" and phpMyAdmin. You can also enable a authentication for the XAMPP demopage
- This web based tool does not fix all problems! The FileZilla FTP server and the Mercury mail server you must secure yourself. If you don't need these servers, don't start them. A server which is not started, is very secure!
In a development environment, AMMP is all you need, and more!
In a live environment, just be aware of the security issues, and take appropriate action, and you will be fine.
Comments much appreciated….