Zend Optimizer és Zend Debugger telepítése

Amikor feltelepítünk egy Zend Studio-t, akkor sok egyéb mellett kapunk egy nagyszerű debuggert, amivel a PHP programok hibáit tudjuk kezeleni. A feltelepítésük azonban nem teljesen triviális, főleg ha a Zend Optimizert is akarjuk telepíteni.

Zend Debugger - Programok hibakeresésé, lépésenkénti végrehajtást és sok egyéb huncutságot tudunk vele végezni.

Zend Optimizer - Egyfajta program cache, illetve licence-el védett (Zend Encoder-rel lekódolt) alkalmazások futtatására alkalmas programcsomag. A Zend Optimizer futás közbn memóriában tartja a forráskód lefordított változatát és amenniyben a kód nem változott, onnan szolgálja ki a kéréseket, megspórolva a háttértárról való betöltést és újraértelmezést.

le kell tölteni a Zend Stúdió letöltési helyéről a Zend Debuggert. Ehhez először kell egy accountot csinálni a Zend website-ján, de nem élnek vissza az adatainkkal, ezért nyugodtan csináljunk, lépjünk be, utána ingyen letölthető a debugger.

Bontsuk ki a telepít?t, mivel az egy ZIP fájlban van.(Ha Windows változat, akkor *.dll fájlok vannak atelepít?ben. ha Linux, akkor *.so fájlok)

Keressük meg a PHP-t és azt a PHP.ini fájlt, ami a rendszeren a PHP-t futtatja. (Ha a C:\PHP be telepítettük a PHP-t, akkor lehet a fájl a C:\PHP\php.ini vagy a C:\windows\php.ini helyen, vagy akárhol másutt :)

A fájlba írjuk be az alábbi sorokat:

; this is to see output while debugging
implicit_flush = On 
; this is to see output while debugging
output_buffering = 0

Ha Windowson kibontottuk a C:\php\ZendDebugger könyvtárba a debugger részeit, akkor az alábbi sorokat kell beírni, ha csak a debuggert akarjuk telepíteni. Az alábbi leírást a PHP 5.2.x verziójára adom, konkrétan 5.2.14 verzión végeztem el a telepítést.

[Zend]
zend_extension_ts=C:/php/ZendDebugger/5_2_x/ZendDebugger.dll
zend_debugger.allow_hosts=127.0.0.1/256 127.0.0.1/256 10.1.1.1/256
zend_debugger.expose_remotely=always 

A zend_debugger.allow_hosts megadja, hogy milyen IP címekről engedélyezzük a hibakeresést.

Ha a Zend Optimizert is akarjuk telepíteni, akkor egy kicsit más megoldás kell, ugyanis először az Optimizert, utána a debuggert kell betölteni. ezt a feladatot a Zend Extension Manager végzi el.

Töltsük le a ZendOptimizer-t innen.

Telepítsük fel. Ha már van telepített Zend Studio, akkor azt fogja megkeresni, megkérdezi a PHP.ini és a webszerver helyét, majd feltelepít mindent, de a Zend debuggert kilövi, ezért egy kicsit módosítani kell a PHP.ini tartalmában.

Én a Zend Optimizert is átmásolom a PHP alá, a C:\PHP\ZendOptimizer helyre, amit a telepít? a C:\Program Files\Zend\Zend Optimizer-3.3.0 helyre rakott. ennek a lib könyvtárára van szükség. ennek a tartalmát bemásolom a PHP alá a C:\PHP\ZendOptimizer\lib könyvtárba. eztuán a PHP.INIében az alábbi beállítások kellenek:

[Zend]
zend_extension_ts="C:/php/ZendOptimizer/lib/ZendExtensionManager.dll"
zend_extension_manager.optimizer_ts="C:/php/ZendOptimizer/lib/Optimizer-3.3.0"

Ezzel kiütöm a debuggert, ezért ekkor az alábbi beállítások kellenek a fenti helyett a debuggerhez. Sajnos át kell írni egy könyvtárnevet a C:\PHP\ZendDebugger\5_2_x_comp könyvtárat az

C:\PHP\ZendDebugger\php-5.2.x névre, majd a PHP.ini-be beírni az alábbiakat:

[Debugger]
zend_extension_manager.debug_server_ts="C:/php/ZendDebugger"
zend_debugger.allow_hosts=192.168.0.1/256 127.0.0.1/256

Ha van a PHP alá telepítve eAccelerator, akkor azt tiltsuk le az alábbi paranccsal (a Zend Optimizer miatt, mivel ugyanaz a szerepük.)

eaccelerator.enable="0"

Ha az xDebug-ot használtunk, akkor tiltsuk le, a PHP.INI-ben az alábbi paranccsal:

;zend_extension=/usr/lib/php4/20020429/xdebug.so

Ha DBG Debugger-t telepítettünk korábban, akkor tiltsuk le azt is, az alábbi módon.

Linuxon

;extension=dbg.so

vagy Windowson

;extension=php_dbg.dll

A végén egy egy php fájlba írjuk be az alábbi egy sort és futtassuk le a webszerveren keresztül.

<?php
phpinfo();
?>

Ha az alábbiakat látjuk, akkor jót látunk: