What is XAMPP?
This is a completely free and open source tool designed to set up a fully functional web server, with its corresponding backend, on any computer. This tool is not intended for large-scale use, but it is essential for any testing environment, and can work without problems in small environments.
XAMPP stands for X (since it does not have a specific operating system), Apache (web server), MariaDB (database server), PHP (backend server) and Perl. This project has been running for more than 10 years, and has thousands of users around the world using it for all kinds of purposes.
We can mount this server without problems in Windows, Linux and macOS. In addition, as we will see below, we can find it with different versions of PHP so that we can have an experience as close as possible to how the web would work on a real server.
Download and install
We can download this program completely free of charge from this link. The download, as we have already explained, is totally free, and has neither hidden payments nor adware or unwanted software. We select the version that corresponds to our operating system, and the PHP version we want to use. In our case we are going to download the one that corresponds to the last update of the backend.
The only requirement to be able to use this tool is to use a version of Windows superior to XP or Server 2003. Although, if for some remote case we use one of these versions, we can also download an older version of the server to work on these obsolete systems.
Download the installer, which occupies between 151 and 165 megabytes (depending on the version) and that's it. Now we execute the .exe file that we have downloaded and the installation will start. If we have a user account control (UAC) activated in our PC we will see a warning like the following one that will recommend us not to install XAMPP in "Program Files" to avoid permissions problems.
The installation wizard will start.
In the next step we can choose what we want to install. The only mandatory is Apache and PHP, although we recommend installing all services to avoid problems of any kind when setting up a website or, as we will see later, installing add-ons.
In the next step we will have to specify the installation directory. XAMPP is "portable", so we can install it in a USB memory and take it always with us. Although, yes, we may have some problems depending on the type of PC where we install it.
Now we will find a notice telling us that, thanks to Bitnami, we can install CMS like Joomla!, Drupal or WordPress with a simple installer to be able to use it inside XAMPP. Later we will see how this works.
Everything is ready, and we can start with the installation. This is quick, and will take no more than a minute.
When finished, we will have our XAMPP ready to start working.
How to configure and use XAMPP
Now we can launch XAMPP from its launcher, called "xampp-control.exe". From it we will open the program's configuration panel, and we will see a window like the following one.
As we can see, in this window we have all the tools and services we may need to get our web up and running. By default, the servers will be stopped, and we will have to launch them as we need them through the "Start" button that appears next to each one. Of course, when we launch them for the first time we may see a firewall warning, having to give permission for them to connect.
From the "Admin" button that appears next to each of the started services we can access the configuration of each of the servers. For example, we can configure the FTP server, or enter the phpMyAdmin to configure the databases.
The "Config" button allows us to open each of the server configuration files to have a more specific configuration of them. For example, in the case of MySQL, we will open my.ini. In addition, the XAMPP control panel itself has its own configuration from which, among other things, we can choose which servers we want to start at startup or change the ports of the servers.
We have everything ready. Now we can enter our local IP, in 127.0.0.1 or through http://localhost/ to access the server and load the web that we have mounted on it.
Web Developer, Blogger, Creative Thinker, Social media enthusiast, Italian expat in Spain, mom of little 9 years old geek, founder of @manoweb. A strong conceptual and creative thinker who has a keen interest in all things relate to the Internet. A technically savvy web developer, who has multiple years of website design expertise behind her. She turns conceptual ideas into highly creative visual digital products.
Matrix. An open network for secure and decentralized communication that you can install in your Ubuntu server
Imagine to have an open platform that is as independent, vibrant and evolving as the Web itself, but for communication. As of June 2019, Matrix is out of beta, and the protocol…
How to setup Free Let’s Encrypt SSL certificates with ISPConfig 3
Let’s Encrypt is an initiative to provide a better way of enabling encryption on websites. It is open, automated and above all: it offers free SSL certificates. Obtaining SSL certificates was always…
Configuring DNS-over-TLS and DNS-over-HTTPS with any DNS Server
The new DNS-over-TLS (DoT) and DNS-over-HTTPS (DoH) protocols are available for enabling end user's privacy and security given the fact that most DNS clients use UDP or TCP protocols which…
How to Set up a Fully Functional Mail Server on Ubuntu 16.04 with iRedMail
Setting up your own mail server from scratch on Linux is complex and tedious, until you meet iRedMail. This tutorial is going to show you how you can easily and…
How to Connect to a Remote Server via SSH from a Linux Shell
Introduction Secure Shell (SSH) is a UNIX-based command interface and protocol for securely getting access to a remote computer. SSH is actually a suite of three utilities - slogin, ssh, and…
How to setup FTP server on ubuntu 14.04 with VSFTPD
FTP is used to transfer files from one host to another over TCP network. This article explains how to setup FTP server on ubuntu 14.04 . There are 3 popular FTP…
How to Create a .ONION Website and Domain With Tor Network
Not a lot of people know about .onion websites, not many people actually use it. .ONION websites are used by people who want to stay anonymous. In addition, .onion websites…
10 Server and network monitoring tools
When you have a website or a network, it’s helpful to be aware of any issues as soon as they occur. There are open source and freeware server/network monitoring tools…
Install Bit Torrent Sync on Ubuntu
There are some great tools for syncing files over the internet available to us, but one stands out from the rest in regards of technology used and possible use cases. A…
Ubuntu: How To Start Program As Service
According to Ubuntu’s Upstart website, “Upstart is an event-based replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them…
How to import and export a large database using SSH
The following code snippets will allow you to import and export a database Command Line. To get SSH access to your hosts server you will need to contact your web hosting company,…
Useful list of commands for linux server management
List of checks that you can perform on a linux server to try and figure out why it keeps going down Disk Space: df -h (Make sure you have enough disk space) Memory: free -m (Check…