In the past, whenever a new version of ZendStudio was released, a new version of the ZendStudioServer component would be released at the same time. This component allows us to easily conduct remote debugging. But since Zend released ZendPlatform, they no longer update the ZendStudioServer component. This results in that we can only remotely debug the PHP 5.1.x environment, but not PHP 5.2.x. To debug PHP 5.2.x, you can only install a huge ZendPlatform. :(
So I have been looking for a "lightweight" solution. Recently, I found a good thing when browsing Zend.com: ZendDebugger-5.2.3-Windows-i386.zip. My intuition told me that this is what I want. Yes. Sure enough, today's test was successful!
Let me talk about my test steps:
Download ZendDebugger-5.2.3-Windows-i386.zip here, and then extract it to a directory, such as: C:Program Files Zend, this will create a new ZendDebugger-5.2.3-Windows-i386 subdirectory in the directory, which contains 4_3_x_comp, 4_4_x_comp, 5_2_x_comp and other directories. Change these x_y_z_comp to php-xyz respectively (for example, change the directory 5_2_x_comp to php-5.2.x);
Make sure Zend Extension Manager has been loaded. If Zend Optimizer is installed, Zend Extension Manager will be installed automatically. If it is not installed, please install Zend Optimizer first. Or you can extract ZendExtensionManager.dll from Zend Optimizer and then manually add a line to php.ini:
zend_extension_ts=”C:Program FilesZendZendOptimizerZendExtensionManager.dll”
Please fill in the location of ZendExtensionManager.dll according to your actual situation;
Add the following lines to the Web Server's php.ini:
zend_extension_manager.debug_server_ts=”C:Program FilesZendZendDebugger-5.2.3-Windows-i386″
zend_debugger.expose_remotely=allowed_hosts
zend_debugger.allow_hosts=127.0.0.1/32,192.168.1.0/24,192.168.1.0/24
zend_debugger.allow_tunnel=127.0.0.1/32
Please fill in the value of zend_extension_manager.debug_server_ts according to your actual situation, which is the parent directory of php-xyz.
Copy dummy.php in the ZendDebugger-5.2.3-Windows-i386 directory to the root directory of your Web site.
Restart your Web Server, OK!
To summarize briefly: Zend Studio's remote debugging is provided by the ZendStudioServer component (ZendDebuger.dll). Essentially this is a Zend extension, so you just need to enable this Zend extension. It's just that the Zend extension produced by Zend Company can only be loaded by the Zend Extension Manager, so we need to do some extra steps, otherwise we only need to simply add a line zend_extension_ts = xxxxxx.