netbeans php ve xdebug

07 Aralık 2013 "Netbeans de xdebug kullanarak php kodu nasıl debug edebilirim?"

Windows 7 ana makine, ubuntu 12.04 virtual host sunucu üzerinde çalışıyorum. Netbeans ile bir proje üzerinde eklentiler yapmam istendi. Proje dökümansız, eski ve çok geniş olduğu için, reverse engineering yaparak çözmek gerekiyordu. Bunun için netbeans ve xdebug hayat kurdardı diyebilirim.

Xdebug kurulumu için öncelikle ubuntu apt-get kullanalım:

apt-get install php5-xdebug

kurulum sonrasında nereye kurdugunu söylüyor, ama bakmayı unutursanız, aşağıdaki komut ile linux makinede xdebug.so dosyasını aratabilirsiniz:

find / -name 'xdebug.so'

apache'yi restart edelim:

şimdi xdebug düzgün çalışıyor mu kontrol edelim. Konsola "php -v" yazdıgınızda aşagıdaki gibi xdebug hakkında bilgiler geliyorsa, sorunsuz çalışıyordur.

php -v
PHP 5.3.10-1ubuntu3.7 with Suhosin-Patch (cli) (built: Jul 15 2013 18:10:56)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
with Xdebug v2.1.0, Copyright (c) 2002-2010, by Derick Rethans
with Suhosin v0.9.33, Copyright (c) 2007-2012, by SektionEins GmbH

/etc/php5/conf.d klasorunde xdebug.ini dosyasını olusturalım veya varsa aşağıdaki gibi değerleri değiştirelim.

php.ini 'de basit bir kaç ayar yapmanız gerekiyor:

zend_extension=/usr/lib/php5/20090626+lfs/xdebug.so
xdebug.remote_enable=on
xdebug.remote_log=/var/log/xdebug.log
xdebug.remote_host=10.0.2.2
xdebug.remote_handler=dbgp
xdebug.remote_port=9000
xdebug.remote_mode=req
xdebug.idekey=netbeans-xdebug

xdebug.remote_host ayarı çok önemli. Burada ip adresi olarak, Netbeans'ın oldugu makine yani bende windows7 makinesinin ip adresi olmalı. linux makinenin degil.

zend_extension xdebug.so dosyasının oldugu yer. eğer paket yönetiminde kurulum sonu mesajını kaçırmışsanız, yukardaki find komutu ile araştırabilirsiniz.

Hepsi bu kadar. artık rahat rahat Netbeans de xdebug kullanarak php kodunuzu debug edebilirsiniz.

bol bol F5 ve CTRL + F5 'li günler :)

ekleme:
ağırlıklı olarak mod_rewrite , htaccess kullanan sitelerde, düzgün debug etmeniz için, browser tarafından xdebug 'u tetiklemeniz şart. bunun için gereken aşamaları şu şekilde toparladım:

Netbeans'da projenin üzerine basın, sağ tuş ile properties->run configuration->advanced kısmına tıklayın. Burada Debug URL yazan ayarı "Do not open web browser" olarak değiştirin.

artık xdebug sizin browserdan debugger'ı tetiklemenizi bekleyecek. Ctrl + F5 'e bastıgınızda xdebug devreye girecek ve sag altta "Waiting for connection" yazan bekleme safhasını göreceksiniz.

şimdi debug etmek istediğiniz siteye girin ve url'lerin sonuna debug başlatma parametresini ekleyin veya bu işi otomatik yapan bir extension / add - on kullanın. Bu iş içinde, Chrome için xdebug helper (https://chrome.google.com/webstore/detail/xdebug-helper/eadndfjplgieldjbigjakmdgkmoaaaoc?hl=en) tavsiye ederim. xdebug helper için default ide eclipse. Bu ayarı değiştirmeniz gerekiyor. Bunun için chrome'un extensions sayfasına gelin ve kurdugunuz extension properties alanından ide seçimini "netbeans" olarak değiştirin.

başarılı olarak bağlantı sağladıgınızda, netbeans'da xdebug barında "running" yazdıgını göreceksiniz.

xdebug parametreleri hakkında ekstra bilgi için http://xdebug.org/docs/all_functions adresini inceleyebilirsiniz.

xdebug için bir add-on eklemek istemiyorsanı, başlamak için:
http://www.dergiweb.com/index.php?XDEBUG_SESSION_START=netbeans-xdebug

ve bitirmek için:
http://www.dergiweb.com/index.php?XDEBUG_SESSION_STOP_NO_EXEC=netbeans-xdebug

komutlarını sitenizin URL adresinde yazarak manuel olarak debug yapabilirsiniz.

netbeans-php-ve-xdebug image

Yazar Hakkında
FatihYILMAZ "Duyurmaya değer bir şey yapmıyor, ya da yaptıkları çok gizli, duyurmak istemiyor." Yazara Ait Diğer Yazılar
İlginizi Çekebilecek Diğer Yazılar
macos memcached kurmak ve php ile memcache baglantisi saglamakmacos icin memcached kurulumu ve php memcache extension ile baglantisini saglamak icin tutorial
laravel 5 - config ayarları olmadan birden çok veritabanına bağlanmaklaravel kullanarak kod tarafında veritabanı baglantılarını oluşturmak için örnek php class.
Bolt CMS (içerik yönetim sistemi) nedir,asıl kurulur? Detaylarla anlatıyorumbasit içerik siteleri için, Bolt CMS 'i anlatıyorum.
MySQL veritabanında para değerlerini hangi kolon tipinde tutmalı?E-commerce türü site yapanlar için özellikle dikkat etmeleri gereken bir konu: mysql için para değerlerini nasıl bir tablo yapısında tutmalı? Kolon tipi ne olmalı?
Joomla için modul kodlamak - Bölüm 1 : Basit ModullerBasit bir Joomla modulu yazacağız. Veritabanına bağlanacak, ekranda veritabanından çekilen bilgileri formatlayıp gösterecek. Joomla 1.5 versiyonu için duzenlenmiştir.
Yorumlar Yorum Ekle
Yorum yazabilmek için, Yeni Kayıt Oluşturun veya Site Girişi Yapın




Tüm Liste »

Son Gönderilen 20 Yazı

borsa linkleri laravel - homestead üzerine mongodb eklemek laravel - custom monolog git notlari ajax kod örnegi - finans servisi tooltip için Borsa notları - Bireysel Yatırımcı Psikolojisi borsa notları - aselsan cloudflare ve api ile otomatik dns kaydi guncelleme mRemoteNG config dosyası confCons.xml yerini değiştirmek için macos memcached kurmak ve php ile memcache baglantisi saglamak gram altın değeri euro cinsinden nasıl hesaplanır? dolar ve türk lirası ol laravel 5 - config ayarları olmadan birden çok veritabanına bağlanmak Yunan Krizi Son Durum - Maliye Bakanlari Anlaşamadi - Liderler toplantisi iptal 18.06.2014 - 19.06.2015: borsa istanbul, Foreks dolar ve euro için takip notlar nodejs kurulum notları Circle Spike Run - Yeni ücretsiz Android Oyunu opel corsa için bazı kullanışlı ayarlar Tap Cowboy - Ücretsiz Android Mobil Telefon Oyunu - Kovboy Oyunu sevenlere mac os kullanirken ntfs dosya sistemine yazmak TP-LINK modemde port açmak - tum adsl modemlerde gecerli yontem

Popüler Yazılar

CNBC-E 'de Twitter Çılgınlığına Katıldı Legend and Killers'in Detayları Belli Oldu Rise of the Godslayer oyuncuları çağırıyor David Cage'in Chronicles Üzüntüsü Call of Duty: Black Ops dan yeni ekran görüntüleri IBM'in Tercihi Firefox "Her Evde 3D TV Olacak" Mafia 2'nin İlk Yapımcı Günlüğü Ortaya Çıktı FIFA Manager 11 Duyuruldu "Blu-ray Kaybedecek" Sin City 2 Baştan Yazılıyor Civilization V Collector's Edition paketi Ölü doğan cep telefonları Crysis 2 Collector's Edition Dragon Age 2 den yeni ekran görüntüleri

En Yeni Videolar

Çin malı cep telefonlarına IMEI kopyalama - IMEI Yedekleme Arch Enemy İstanbulda - 27 Ocak 2012 Karanlık Saat (The Darkest Hour) VİZYONDA! 2012 Eurovision Temsilcimiz CAN BONOMO! Film önerisi: Duplicity - Sahtekarlar Türkçe Adsense Resmi Youtube Kanalı açıldı. Nasıl iPhone kullanarak, windows laptop internete bağlanır? En Populer iPhone Oyunları: Fruit Ninja, Plants vs Zombies, Angry Birds - I ABIT 'den Kol Saati ve Cep Telefonu Bir Arada. RailGun silahları gerçek oluyor. Google Earth 6 duyuruldu, artık ağaçlar bile 3 boyutlu. iPhone ve İnternet Adres Sorunu Crysis 2'ye Yeni Tarih FIFA 11 için Yeni Tanıtım Videosu Yayınlandı Street Fighter ve Tekken Sonunda Bir Araya Geliyor

En Son Yorumlar

» GokhanYILMAZ@22:21: "hey gidi"
» FatihYILMAZ@12:35: "steve jobs öldü belki ama mirası yükselmeye devam ediyor. "
» paranoiahasu@19:19: "Eklenti seçenekleri biraz daha fazla olsa, kullanıcılarının bü..."
» Silphatos@19:02: "güzel olmuş, severim richard abimi. artık şatoya kat çeker para..."
» paranoiahasu@13:28: "beklentilerin gerisinde olan getiriler şirketler için zarar olmuş..."
» CeUn@11:42: "hem "kar" yapıp hem zarar etmek nasıl oluyor acaba.."
» paranoiahasu@16:25: "Core i7 serisinin ısınma sorununa da bir çare bulurlar umarım. S..."
» FatihYILMAZ@14:06: "BP battıkca batıyor be. bu nedir şimdi yani."
» paranoiahasu@02:25: "güçlü işlemci ve ram seçeneği ile bu tür telefonlar teknoloji..."
» paranoiahasu@02:24: "ilginç bir durum aslında. özellikle netbook satışlarının tava..."
» MrHades@12:34: "güzel olacağa benziyor."
» OzanFIRAT@11:49: "yarısı DLC olarak sunulur zaten hehe "
» OzanFIRAT@11:48: "benim 3.5 kiloluk darbeye dayanıksız, hatta taşımaya dayanaksız..."
» paranoiahasu@18:47: "Listede de yok yok maşallah =)"
» paranoiahasu@13:10: "Şu an betayı x1900 gt ekran kartı (256 bit) ve 3 gb ram ile oynuy..."
» FatihYILMAZ@18:02: "apple delisi kuyuya bir taş attı, artık tutabilene aşkolsun. tel..."
» paranoiahasu@13:59: "wave de çok iyi satıyormuş"
» OzanFIRAT@11:36: "herşeyiyle bana SWG'yi hatırlattı, sanırım kasten gelişimleri ..."
» OzanFIRAT@22:33: "heh bende ps3'te infamous oynarken aynı şeyleri hissediyordum :D "
» paranoiahasu@23:21: "ön sipariş linki aradım yazıda bulamadım .."
» paranoiahasu@19:15: "bu resmi uzunca bir süre duvar kağıdı olarak kullanmıştım =)"
» FatihYILMAZ@11:48: "ehe evde x-box'da bunu oynuyorum. Oyunun kendisini tavsiye ederim, ..."
» paranoiahasu@14:33: "Hemen edinmeli bu albümü =)"
» paranoiahasu@02:16: "İnanılmaz şekilde kredi kartımı kabul etmeyen steam yüzünden ..."
» OzanFIRAT@23:36: "haberi bitirmeyi beklemeden, yazarken sabredemeyip Left 4 Dead 2 ve ..."

Evvel Zaman