在ZendStudio 中開啟PHP 5.2.x 環(huán)境的遠(yuǎn)程調(diào)試功能
以前每當(dāng)一個(gè) ZendStudio 的新版本發(fā)布時(shí)都會(huì)同時(shí)發(fā)布一個(gè)新版的 ZendStudioServer 組件,這個(gè)組件可以讓我們很方便地進(jìn)行遠(yuǎn)程調(diào)試。但是自從 Zend 發(fā)布了 ZendPlatform 以后他們就不再更新 ZendStudioServer 組件了。這就導(dǎo)致我們只能遠(yuǎn)程調(diào)試 PHP 5.1.x 的環(huán)境,而不能調(diào)試 PHP 5.2.x。要想調(diào)試 PHP 5.2.x 只能裝一個(gè)龐大的 ZendPlatform。:(
因此我一直在找一個(gè)“輕量級(jí)”的解決方案。近日在逛 Zend.com 時(shí)發(fā)現(xiàn)了一個(gè)好東西:ZendDebugger-5.2.3-Windows-i386.zip,直覺(jué)告訴我,這就是我想要的。果不其然,今天試驗(yàn)成功!
下面就說(shuō)一說(shuō)我的試驗(yàn)步驟:
到這里下載ZendDebugger-5.2.3-Windows-i386.zip,然后將其解壓到某一目錄,比如:C:Program FilesZend,這就會(huì)在該目錄里面新建一個(gè) ZendDebugger-5.2.3-Windows-i386 子目錄,里面有 4_3_x_comp、4_4_x_comp、5_2_x_comp 等目錄,將這些 x_y_z_comp 分別改為 php-x.y.z(比如將目錄 5_2_x_comp 改為 php-5.2.x);確保已經(jīng)加載了 Zend Extension Manager,如果安裝了 Zend Optimizer 則會(huì)自動(dòng)安裝 Zend Extension Manager,若沒(méi)有安裝請(qǐng)先安裝 Zend Optimizer 。或者你可以把 Zend Optimizer 中 ZendExtensionManager.dll 給提取出來(lái),然后手工在 php.ini 中添加一行:zend_extension_ts=”C:Program FilesZendZendOptimizerZendExtensionManager.dll”其中 ZendExtensionManager.dll 的位置請(qǐng)根據(jù)你的實(shí)際情況填寫;在 Web Server 的 php.ini 添加下面幾行:zend_extension_manager.debug_server_ts=”C:Program FilesZendZendDebugger-5.2.3-Windows-i386″zend_debugger.expose_remotely=allowed_hostszend_debugger.allow_hosts=127.0.0.1/32,192.168.1.0/24,192.168.1.0/24zend_debugger.allow_tunnel=127.0.0.1/32
zend_extension_manager.debug_server_ts 的值請(qǐng)根據(jù)你的實(shí)際情況填寫,就是 php-x.y.z 的父目錄。
把 ZendDebugger-5.2.3-Windows-i386 目錄下的 dummy.php 復(fù)制到你的 Web 站點(diǎn)根目錄。
重啟你的 Web Server,OK!
簡(jiǎn)單總結(jié)一下:Zend Studio 的遠(yuǎn)程調(diào)試是由 ZendStudioServer 組件(ZendDebuger.dll)提供的。本質(zhì)上這是一個(gè) Zend 擴(kuò)展,因此你只要能把這個(gè) Zend 擴(kuò)展啟用就可以了。只是 Zend 公司出品的 Zend 擴(kuò)展只能由那個(gè) Zend Extension Manager 負(fù)責(zé)加載,所以我們才需要做一些額外的步驟,否則只需簡(jiǎn)單地加一行 zend_extension_ts = xxxxxx 而已。
