Zend Debugger

The Zend Debugger is a remote debugging tool for developers working with Zend Studio.
The Zend Debugger is an API that communicates with the Zend (PHP) Engine to retrieve runtime information and reveal it in Zend Studio for debugging purposes.
Note: If your machine has multiple IP addresses, make sure you define all IPs as allowed hosts in Zend Server.

PHP API

Function: debugger_start_debug()
Triggers a debug session from within a script

Returns:
Available since: 3.6


Function: boolean debugger_connect()
Initiates a tunnel connection

Returns: TRUE the connection is established or FALSE could not connect
Available since: 3.6


INI Directives:

zend_debugger.allow_hosts
Specifies the hosts that are allowed to connect (hostmask list) with Zend Debugger when running a remote debug session with Zend Studio

Default value(s):
127.0.0.1/32,10.0.0.0/8,192.168.0.0/16,172.16.0.0/12:
Type: string
Measurement units:
Available since: 3.6

zend_debugger.deny_hosts
Specifies the hosts that are not allowed to connect (hostmask list) with the Zend Debugger when running a remote debug session with Zend Studio

Default value(s):
:
Type: string
Measurement units:
Available since: 3.6

zend_debugger.allow_tunnel
A list of hosts (hostmask list) that can use the machine on which Zend Server is installed to create a communication tunnel for remote debgging with Zend Studio. This is done to solve firewall connectivity limitations

Default value(s):
:
Type: string
Measurement units:
Available since: 3.6

zend_debugger.max_msg_size
The maximum message size accepted by the Zend Debugger for protocol network messages

Default value(s):
2097152:
Type: int
Measurement units:
Available since: 3.6

zend_debugger.httpd_uid
The user ID of the httpd process that runs the Zend Debugger (only for tunneling)

Default value(s):
-1:
Type: int
Measurement units:
Available since: 3.6

zend_debugger.tunnel_min_port
A range of ports that the communication tunnel can use. This defines the minimum value for the range

Default value(s):
1024:
Type: int
Measurement units:
Available since: 3.6

zend_debugger.tunnel_max_port
A range of ports that the communication tunnel can use. This defines the maximum value for the range

Default value(s):
65535:
Type: int
Measurement units:
Available since: 3.6

zend_debugger.expose_remotely
Define which clients know that the Zend Debugger is installed:
0 - Never. The presence of the Zend Debugger is not detected by other clients
1 - Always. All clients can detect the Zend Debugger
2 - Allowed Hosts. Only clients listed in zend_debugger.allow_hosts can detect the Zend Debugger
Any other value makes the Zend Debugger undetectable (same as "Never")

Default value(s):
2:
Type: int
Measurement units:
Available since: 3.6

zend_debugger.passive_mode_timeout
The Debugger's timeout period (in seconds) to wait for a response from the client (Zend Studio)

Default value(s):
20:
Type: int
Measurement units: seconds
Available since: 3.6