devilbox/docs/intermediate/configure-php-xdebug/xdebug-lin.rst

87 lines
2.0 KiB
ReStructuredText
Raw Normal View History

2018-07-23 21:25:48 +00:00
:orphan:
.. include:: /_includes/all.rst
.. _configure_php_xdebug_lin:
*********************************
Configure Xdebug: Docker on Linux
*********************************
Docker on Linux allows Xdebug to automatically connect back to the host system without the need
of an explicit IP address.
**Table of Contents**
.. contents:: :local:
Prerequisites
=============
Ensure you know how to customize ``php.ini`` values for the Devilbox.
.. seealso::
* :ref:`php_ini`
* :ref:`configure_php_xdebug_options`
Configure php.ini
=================
Configuring Xdebug for Docker on Linux is straight forward and you must only pay attention to
two variables highlighted below.
The following example show how to configure PHP Xdebug for PHP 5.6:
**1. Create xdebug.ini**
.. code-block:: bash
# Navigate to the Devilbox git directory
host> cd path/to/devilbox
# Navigate to PHP 5.6 ini configuration directory
host> cd cfg/php-ini-5.6/
# Create and open debug.ini file
host> vi xdebug.ini
**2. Paste the following content into xdebug.ini**
.. code-block:: ini
:caption: xdebug.ini
:emphasize-lines: 7,11
2018-07-23 21:25:48 +00:00
; Defaults
xdebug.default_enable=1
2018-07-23 21:25:48 +00:00
xdebug.remote_enable=1
xdebug.remote_port=9000
; The Linux way
2018-07-23 21:25:48 +00:00
xdebug.remote_connect_back=1
; idekey value is specific to each editor
; Verify with your IDE/editor documentation
2018-07-23 21:25:48 +00:00
xdebug.idekey=PHPSTORM
; Optional: Set to true to auto-start xdebug
2018-07-23 21:25:48 +00:00
xdebug.remote_autostart=false
**3. Configure your IDE/editor**
.. seealso::
* :ref:`configure_php_xdebug_editor_atom`
* :ref:`configure_php_xdebug_editor_phpstorm`
* :ref:`configure_php_xdebug_editor_sublime3`
* :ref:`configure_php_xdebug_editor_vscode`
.. important::
Depending on your IDE/editor, you might have to adjust ``xdebug.idekey`` in the above
configured ``xdebug.ini``.
**4. Restart the Devilbox**
Restarting the Devilbox is important in order for it to read the new PHP settings.