XAMPP is an open-source web development application distributed by Apache Friends, offering an entire development stack in one package. XAMPP comes with Apache HTTP, MariaDB, and interpreters for PHP and Perl. This makes XAMPP a quick way to deploy web development solutions even on a localhost. This all-in-one package is a flexible solution for new developers or teams who need to test new products quickly.
What is XAMPP
XAMPP is a recursive acronym. The X identifies it as a cross-platform application. The rest of the letters identify the solutions provided in the package: Apache, MariaDB, PHP, and Perl.
XAMPP allows you to run a web server installation right on your Windows, Linux, or Mac desktop computer. You don’t need access to the internet to test web development products. This is the biggest advantage of a XAMPP server.
XAMPP mainly provides a method for acquiring and updating to the latest version of all of its included tools. Most of the builds that XAMPP releases aren’t for XAMPP itself, but for its individual components.
While it’s tempting to always update to the latest version of a platform, always remember to back up your server before you do. New updates may contain more bugs and issues than they solve, so always keep a backup handy so that you can revert to an earlier server image if needed.
Included in this package is the famous Apache server, and it’s one of the most common server platforms around. It’s open-source and kept up by contributions from developers around the world. The software is included in the package and is necessary for the proper operation of a server. You’ll need this in order for your website or application to communicate with users. Without this, you don’t have a website.
MariaDB is the database application. It replaced the well-known MySQL due to its more open and vibrant development. The two are nearly identical, however: anything you can do in MySQL, you can do in MariaDB. Either application would suit your database needs.
PHP is a server-side scripting language used for the development of content management systems like Joomla or Wordpress. It’s slowly falling out of favor and being replaced by Node.js, but it’s still the basis for the most popular out-of-the-box content management systems.
Perl is a programming language commonly described as flexible, powerful, and inelegant. It’s often used for system admin, text manipulation, and user interfaces.
Also included in this package (though not in the acronym) is OpenSSL, which provides security for your server builds. This is a critical component, important to anyone concerned with security. OpenSSL provides solutions for TLS and SSL communication methods.
Tools and updates
Users of XAMPP can rest assured that they’ll get the latest and most stable builds. XAMPP is updated any time any of the languages contain receive an update.
If you’re attached to certain platforms, like Drupal or Joomla, Bitnami has provided a way to install add-ons like these on your XAMPP server. These are considered ‘add-ons’, and they’re similar to what you’d find in cPanel.
Bitnami offers installation support for a fair number of programs, like Typo 3, Moodle, myBB, and OpenCart. You can also find installations for Joomla, WordPress, MediaWiki, and SugarCRM.
These packages install directly into your server. You can open up the directories and inspect and edit all of the files. Most of the included add-ons are open-source applications. You could further install plugins for these apps if you wanted to, and open / edit those files as well.
Since XAMPP runs the server as a localhost, you could connect via FTP if you so desired. This is mostly useful if you’re working with a development team. They’ll be able to FTP into your server and adjust, add, or delete files as necessary, as long as they’re within the scope of the server. This could still make you vulnerable to security threats, especially since XAMPP’s security features are turned off by default.
Behind the curve
AppServ is a similar packaged installation bundle. It includes Apache, MySQL, PHP, and PhpMyAdmin. However, it’s only intended for Windows 10 machines, while XAMPP is cross-platform. It also has far less support and an inconsistent development cycle.
Another alternative is what’s known as the WAMP stack, which consists of Windows OS, Apache HTTP, MySQL, and PHP. Which this stack isn’t an installer like XAMPP is, it’s still worth talking about. The biggest issue with WAMP (or the Linux version, LAMP) is more about its inability to migrate to a server without knowing the OS. The absence of Perl isn’t a huge factor; cross-compatibility, however, is a big issue.
A necessary component for development
XAMPP makes it easier to deploy web solutions. It allows you to develop and test on a local device before you ever need to push to a server platform. For smaller developers, this translates to cost savings: you won’t need to buy your own server to play around on; you can do it all on your localhost.
The latest stable releases offer only the latest versions of the included software. Recent updates have the latest versions of PHP 7 added to the package. Those PHP 7 updates include fixes for crashes, adjustments for error handling, and patches for memory leaks.