localhost/xampp
The XAMPP dashboard at localhost/xampp provides quick access to your local development server status, phpMyAdmin database management, server configuration, and essential XAMPP tools for web development.
What is XAMPP?
XAMPP is a free, open-source, cross-platform web server solution stack package developed by Apache Friends. It provides everything needed for local web development:
- X - Cross-platform (Windows, Linux, Mac)
- A - Apache HTTP Server (web server)
- M - MySQL/MariaDB (database management system)
- P - PHP (server-side scripting language)
- P - Perl (programming language)
XAMPP creates a complete local development environment on your computer, allowing you to develop and test websites and web applications offline before deploying to production servers.
XAMPP Components and Versions
| Component | Purpose | Port |
|---|---|---|
| Apache | Web server for serving HTML/PHP pages | 80, 443 |
| MySQL/MariaDB | Relational database management system | 3306 |
| PHP | Server-side scripting language | - |
| phpMyAdmin | Web-based database administration tool | - |
| ProFTPD | FTP server for file transfers | 21 |
| Mercury | Mail transport system (SMTP) | 25 |
| Tomcat | Java servlet container | 8080 |
| Perl | Scripting language | - |
How to Access XAMPP Dashboard
- Install XAMPP from apachefriends.org
- Open XAMPP Control Panel application
- Start Apache web server (click Start button)
- Wait for Apache to show "Running" status
- Open web browser (Chrome, Firefox, Edge)
- Navigate to
localhost/xampporlocalhost/dashboard - XAMPP welcome page will display with navigation menu
XAMPP Dashboard Features and Tools
- Status Check - View running services and their status
- phpMyAdmin - Quick access to database management interface
- phpinfo() - Display complete PHP configuration information
- Security - Configure XAMPP security settings
- Webalizer - Web server log file analysis
- Documentation - Access XAMPP help and documentation
- CD Collection - Demo database application example
- FAQ - Frequently asked questions and answers
- How-To Guides - Step-by-step tutorials
- Language Selection - Switch dashboard language
Default XAMPP URLs and Access Points
localhostor127.0.0.1- Web server root / your projectslocalhost/xampp- XAMPP dashboard and welcome pagelocalhost/dashboard- Alternative dashboard URLlocalhost/phpmyadmin- Database management interfacelocalhost/webalizer- Web server statisticslocalhost/security- XAMPP security configurationlocalhost:80- Apache HTTP portlocalhost:443- Apache HTTPS SSL portlocalhost:3306- MySQL database port
XAMPP Installation Locations
| Operating System | Default Installation Path |
|---|---|
| Windows 32-bit | C:\xampp\ |
| Windows 64-bit | C:\xampp\ |
| Linux | /opt/lampp/ |
| Mac OS X | /Applications/XAMPP/ |
Important XAMPP Directories
Windows Directory Structure
- C:\xampp\htdocs\ - Web server document root (put your projects here)
- C:\xampp\apache\conf\ - Apache configuration files
- C:\xampp\apache\logs\ - Apache error and access logs
- C:\xampp\mysql\data\ - MySQL database files
- C:\xampp\mysql\bin\ - MySQL executable files
- C:\xampp\php\ - PHP installation directory
- C:\xampp\phpMyAdmin\ - phpMyAdmin files
- C:\xampp\perl\ - Perl installation
- C:\xampp\tmp\ - Temporary files
Linux Directory Structure
- /opt/lampp/htdocs/ - Web document root
- /opt/lampp/etc/ - Configuration files
- /opt/lampp/logs/ - Log files
- /opt/lampp/var/mysql/ - MySQL data
- /opt/lampp/bin/ - Executable files
How to Start and Stop XAMPP Services
Windows GUI Method
- Open XAMPP Control Panel (xampp-control.exe)
- Click "Start" button next to Apache
- Click "Start" button next to MySQL
- Services will show "Running" when started successfully
- Click "Stop" button to stop services
- Use "Admin" buttons for service-specific administration
Command Line Methods
Common XAMPP Problems and Solutions
Error: "Apache won't start" or "Port 80 in use"
Port 80 is already being used by another application.
- Check for IIS: Internet Information Services uses port 80 on Windows
- Skype conflict: Old Skype versions use ports 80 and 443
- Other web servers: nginx, WAMP, or another Apache instance
- Solution 1: Stop the conflicting application
- Solution 2: Change Apache port to 8080 in httpd.conf
- Solution 3: Run XAMPP as administrator
Error: "MySQL won't start" or "Port 3306 in use"
Port 3306 is occupied by another MySQL instance or service.
- Check if MySQL Windows Service is running
- Stop other MySQL instances
- Change MySQL port in my.ini configuration file
- Check for corrupted database files
- Review MySQL error log for specific errors
Error: "Access forbidden! You don't have permission"
Apache directory permissions or configuration issue.
- Check folder permissions on htdocs directory
- Review httpd.conf for "Require all granted" directive
- Verify .htaccess file isn't blocking access
- Ensure Apache user has read permissions
- Check DocumentRoot setting in httpd.conf
Error: "localhost/xampp not found" or 404 Error
- Verify Apache is running (green in control panel)
- Try
localhost/dashboardinstead - Check if xampp folder exists in htdocs
- Clear browser cache and cookies
- Try
127.0.0.1/xamppinstead of localhost - Restart Apache service
Error: "XAMPP Control Panel won't open"
- Run as Administrator on Windows
- Check if xampp-control.exe is running in Task Manager
- Kill any existing xampp-control.exe processes
- Reinstall XAMPP if corrupted
- Check antivirus isn't blocking it
How to Change Apache Port in XAMPP
- Open XAMPP Control Panel
- Click "Config" button next to Apache
- Select "httpd.conf" from dropdown menu
- Find line:
Listen 80 - Change to:
Listen 8080(or any available port) - Find:
ServerName localhost:80 - Change to:
ServerName localhost:8080 - Save httpd.conf file
- Also edit httpd-ssl.conf for HTTPS port if needed
- Restart Apache from control panel
- Access at:
localhost:8080
How to Change MySQL Port in XAMPP
- Stop MySQL service in control panel
- Click "Config" button next to MySQL
- Select "my.ini" configuration file
- Find:
port=3306under [mysqld] section - Change to:
port=3307(or desired port) - Also change under [client] section if present
- Save my.ini file
- Update phpMyAdmin config.inc.php with new port
- Start MySQL with new port
How to Create Virtual Hosts in XAMPP
Virtual hosts allow you to use custom domain names like myproject.local instead of localhost/myproject:
- Edit httpd-vhosts.conf file
- Add virtual host configuration
- Edit hosts file on your computer
- Add domain mapping to 127.0.0.1
- Restart Apache
- Access your site at custom domain
XAMPP Security Configuration
Secure your XAMPP installation for local development:
Set MySQL Root Password
- Access
localhost/phpmyadmin - Go to "User accounts" tab
- Edit "root" user
- Set strong password
- Update password in phpMyAdmin config.inc.php
Security Checklist
- Set MySQL root password (default is blank - insecure!)
- Restrict phpMyAdmin access by IP address
- Disable directory listing in Apache
- Remove demo applications (CD Collection, etc.)
- Enable XAMPP security page access control
- Keep XAMPP updated to latest version
- Never expose XAMPP to internet/network
- Use XAMPP only for local development
Testing Your XAMPP Installation
Test 1: Apache Web Server
- Create file:
htdocs/test.html - Add content:
<h1>Apache Works!</h1> - Access:
localhost/test.html - Should display "Apache Works!" message
Test 2: PHP Installation
- Create file:
htdocs/test.php - Add code:
<?php phpinfo(); ?> - Access:
localhost/test.php - Should display PHP configuration page
Test 3: MySQL Database
- Access:
localhost/phpmyadmin - Login with root / (blank password)
- Create test database
- If successful, MySQL is working
Where to Put Your Web Projects
Place all your web development projects in the htdocs folder:
Windows
- Location: C:\xampp\htdocs\
- Example: C:\xampp\htdocs\myproject\
- Access: localhost/myproject
Linux
- Location: /opt/lampp/htdocs/
- Example: /opt/lampp/htdocs/myproject/
- Access: localhost/myproject
Mac
- Location: /Applications/XAMPP/htdocs/
- Example: /Applications/XAMPP/htdocs/myproject/
- Access: localhost/myproject
XAMPP vs Alternatives
| Software | Platform | Features |
|---|---|---|
| XAMPP | Windows, Linux, Mac | Apache, MySQL, PHP, Perl |
| WAMP | Windows only | Apache, MySQL, PHP |
| MAMP | Mac, Windows | Apache, MySQL, PHP |
| LAMP | Linux | Linux, Apache, MySQL, PHP |
| Laragon | Windows | Apache/Nginx, MySQL, PHP |
| AMPPS | Windows, Linux, Mac | Apache, MySQL, PHP, Softaculous |
Frequently Asked Questions
How do I uninstall XAMPP?
Windows: Run uninstall.exe in XAMPP folder or use Programs & Features. Linux: Run sudo /opt/lampp/uninstall. Mac: Drag XAMPP folder to trash and remove with AppCleaner.
Can I install multiple PHP versions in XAMPP?
Yes, but requires manual configuration. Download different PHP versions, place in separate folders, and modify httpd.conf to switch between versions.
Is XAMPP free?
Yes, XAMPP is completely free and open source under GNU General Public License.
Can I use XAMPP for production?
No! XAMPP is designed only for development. It has insecure default settings and should never be exposed to the internet or used for production websites.
Related Resources and Tools
- localhost/phpmyadmin - Database management interface
- localhost:80 - Apache HTTP port
- localhost:3306 - MySQL database port
- localhost:443 - Apache HTTPS SSL port
- localhost:8080 - Alternative HTTP port
- localhost/wordpress - WordPress installation
- localhost/dashboard - Alternative dashboard URL
- Troubleshooting Guide - Fix XAMPP issues