From Joomla! Documentation
Bcmath bz2 calendar Core ctype curl date dom dtrace ereg exif fileinfo filter ftp gd gettext hash iconv imap intl json ldap libxml mbstring mcrypt memcache memcached mhash mongo mssql mysql mysqli mysqlnd OAuth odbc openssl pcntl pcre PDO pdodblib pdomysql pdopgsql pdosqlite pgsql Phar posix Reflection session shmop SimpleXML soap sockets.
- Download Xdebug from Xdebug Downloads page. To find out which version of the extension to download, click here. If you are using Zend Server, disable the Zend Debugger (If not, skip to step 3).
- Configuring PHP, Apache, MySQL, and Xdebug for PHP development in MAC OS X. This tutorial shows you how to set up PHP on the MAMP (Macintosh, Apache, MySQL, PHP) package, which includes the Apache web server, the MySQL database server, and the PHP engine. MAMP is intended as a PHP development environment for the Mac, which can work seamlessly with the NetBeans IDE.
- XAMPP is an easy to install Apache distribution containing MariaDB, PHP, and Perl. Just download and start the installer. XAMPP for Windows 7.2.34, 7.3.23 & 7.4.11.
- 1Edit PHP.INI File for XDebug
For Windows
Starting with version 1.7, XAMPP includes the XDebug PHP debugger, but it needs to be configured for use. To do that, we will edit the 'php.ini' file to configure XDebug. The 'Loaded Configuration File' in the screenshot above tells you what 'php.ini' file is being used. For Windows, this is normally 'c:xamppapachebinphp.ini'.
Important note for Windows 7 & Vista users: As of August 2013 (XAMPP version 1.8.2), the file 'php_xdebug.dll' that is included with XAMPP now works with Windows 7 & Vista. In some earlier versions of XAMPP, the distributed version of XDebug did not work correctly. The symptom of this earlier problem was that the Apache server would stop if this version of XDebug is loaded. To check that you are running the correct version of XDebug on your system, follow these instructions on the XDebug site.
We need to edit this file to configure XDebug as follows:
- Find the line 'implicit_flush' and set it as follows:
- Find the section called '[Zend]' and comment out all of the lines by putting a semi-colon (';') at the start of each line.
- Find the line: zend_extension = 'c:xamppphpextphp_xdebug.dll' and uncomment it out.
- Find the '[XDebug]' section and uncomment out all of the lines (except for the first comment line). For Windows, it should look like the example below:
You do not need to enable XDebug profiling to use XDebug to debug Joomla code. Profiling allows you to find performance bottlenecks in your PHP code. However, enabling profiling with XDebug can slow down your system substantially, so it is not recommended unless you need it. To enable XDebug profiling, add these entries to your php.ini file.
For Windows 7 & Vista, you will use the file downloaded from the XDebug site. So the first line will be
For PHP version 5.3 or later, the '_ts' has been dropped, so the first line will read
In XAMPP 1.7.3 on Windows 7 (currently not verified/tested with prior Windows versions), XDebug may not work correctly if the path to the DLL file is in quotes. In this case, the line should be
For Linux
We will edit the php.ini file to configure XDebug. The Loaded Configuration File in your phpinfo display tells you what php.ini file is being used. For Linux, it will be something like /etc/php/7.2/apache2/php.ini. (The PHP configuration is available in the Administrator of your Website: Administrator > System > System Information > PHP Information tab.)
Edit this file to configure XDebug as follows:
- Find the line implicit_flush and set it as follows:
- Add the following lines at the end:
If using php5-xdebug on Ubuntu The xDebug Configuration detailed above can be appended to:
It should already contain the zend_extension variable and only needs the following variables added:
Tip for users with LAN or remote servers:
Should be set to the IP address of your Eclipse workstation [LAN users] or your public IP. For example:
For Mac OS X
XAMPP for Mac OS X includes the XDebug PHP debugger, but it needs to be added to the 'php.ini' file so that XDebug runs when Apache is started. To do this, open up the php.ini file, located at '/Applications/XAMPP/xamppfiles/etc/php.ini'.
We need to edit this file to configure XDebug as follows:
- Find the line 'implicit_flush' and set it as follows:
- Add the following lines at the end:
Be sure to navigate to the directory where you targeted the extension and check to see that the file path is correct. The folders in your XAMPP installation may be named differently.
The current (as of Sept 2010) version of the XAMPP binary for OS X contains the 2.0.4 version of Xdebug which will not let you see the variable data from included files when running xdebug. You can download a newer version from http://code.activestate.com/komodo/remotedebugging/. Unzip and copy one of the xdebug.so files to /Applications/XAMPP/xamppfiles/lib/php/php-5.3.1/extensions/no-debug-non-zts-20090626. As of Oct 2, 2010 this binary is still out of date (2.1beta3 rather than the stable 2.1) but it will show the variable data appropriately.
Test XDebug Installation
Now, we need to check that XDebug is installed correctly. To do this, we need to re-start XAMPP. In Windows, we can just browse to the 'c:xampp' folder in Windows Explorer and double-click the program 'xampp-control.exe' to open the application shown below.
Press the 'Stop' button for 'Apache'. The button with then read 'Start'. Press 'Start' for Apache and wait a few seconds and the green 'Running' message will again display. Then press 'Exit' to close the application.
In Windows, if you get 'ERROR: MySQL service not started [-1]', you may be able to correct this by going to c:xamppmysql and running mysql_uninstallservice.bat followed by mysql_installservice.bat.
Xdebug Chrome Extension
In Linux, to restart XAMPP execute the command
In Mac, open the 'XAMPP Control' application, stop, and then start the Apache service again.
Once XAMPP has been restarted, open a browser and navigate to 'http://localhost' to display the XAMPP welcome message (if you set XAMPP to listen to another port, you must append the port to the url; e.g.:'http://localhost:8080/'). Press the 'phpinfo()' link again to display the PHP information screen. Scroll down to the lower part of the screen. You should see a section for 'XDebug' as shown below.
Look at the settings you entered in the 'php.ini' file above. You should see these same settings in the xdebug display, as shown below.
At this point, XDebug is set up correctly.
XAMPP is an easy to install Apache distribution containing MariaDB, PHP, and Perl. Just download and start the installer. It's that easy.
Download Xdebug Php Mac
XAMPP for Windows7.2.34, 7.3.23 & 7.4.11
Version Checksum Size 7.2.34 / PHP 7.2.34 What's Included? - md5
- sha1
153 Mb 7.3.23 / PHP 7.3.23 What's Included? - md5
- sha1
153 Mb 7.4.11 / PHP 7.4.11 What's Included? - md5
- sha1
154 Mb Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.2.34, phpMyAdmin 5.0.3, OpenSSL 1.1.1, XAMPP Control Panel 3.2.4, Webalizer 2.23-04, Mercury Mail Transport System 4.63, FileZilla FTP Server 0.9.41, Tomcat 7.0.106 (with mod_proxy_ajp as connector), Strawberry Perl 5.32.0.1 Portable
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.3.23, phpMyAdmin 5.0.3, OpenSSL 1.1.1, XAMPP Control Panel 3.2.4, Webalizer 2.23-04, Mercury Mail Transport System 4.63, FileZilla FTP Server 0.9.41, Tomcat 7.0.106 (with mod_proxy_ajp as connector), Strawberry Perl 5.32.0.1 Portable
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.4.11, phpMyAdmin 5.0.3, OpenSSL 1.1.1, XAMPP Control Panel 3.2.4, Webalizer 2.23-04, Mercury Mail Transport System 4.63, FileZilla FTP Server 0.9.41, Tomcat 7.0.106 (with mod_proxy_ajp as connector), Strawberry Perl 5.32.0.1 Portable
Windows 2008, 2012, Vista, 7, 8 (Important: XP or 2003 not supported)
Windows XP or 2003 are not supported. You can download a compatible version of XAMPP for these platforms here.
XAMPP for Linux7.2.34, 7.3.23 & 7.4.11
Version Checksum Size 7.2.34 / PHP 7.2.34 What's Included? - md5
- sha1
151 Mb 7.3.23 / PHP 7.3.23 What's Included? - md5
- sha1
148 Mb 7.4.11 / PHP 7.4.11 What's Included? - md5
- sha1
149 Mb Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.2.34 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.3.23 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.4.11 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Most all distributions of Linux are supported, including Debian, RedHat, CentOS, Ubuntu, Fedora, Gentoo, Arch, SUSE.
XAMPP for OS X7.2.34, 7.3.23, 7.4.11, 7.2.34, 7.3.23 & 7.4.11
Version Checksum Size 7.2.34 / PHP 7.2.34 What's Included? - md5
- sha1
161 Mb 7.3.23 / PHP 7.3.23 What's Included? - md5
- sha1
160 Mb 7.4.11 / PHP 7.4.11 What's Included? - md5
- sha1
159 Mb 7.2.34 / PHP 7.2.34 What's Included? - md5
- sha1
353 Mb 7.3.23 / PHP 7.3.23 What's Included? - md5
- sha1
355 Mb 7.4.11 / PHP 7.4.11 What's Included? - md5
- sha1
356 Mb Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.2.34 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.3.23 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.4.11 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.2.34 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.3.23 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Includes: Apache 2.4.46, MariaDB 10.4.14, PHP 7.4.11 + SQLite 2.8.17/3.33.0 + multibyte (mbstring) support, Perl 5.32.0, ProFTPD 1.3.6, phpMyAdmin 5.0.3, OpenSSL 1.1.1h, GD 2.2.5, Freetype2 2.4.8, libpng 1.6.37, gdbm 1.8.3, zlib 1.2.11, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.11, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.48, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.53.1, libxslt 1.1.33, libapreq 2.13, FPDF 1.7, ICU4C Library 66.1, APR 1.5.2, APR-utils 1.5.4
Add-ons
Applications
Install your favorite apps on top of XAMPP. Bitnami provides a free all-in-one tool to install Drupal, Joomla!, WordPress and many other popular open source apps on top of XAMPP.
Pecl Xdebug
OS X native modules have been deprecated. Please use XAMPP-VM for OS X and the Linux version of the add-ons. Check our FAQs for more info.