Tanrım Batman. Bu inanılmaz derecede sinir bozucuydu. İşte xhprof'u çalıştırmak için bir rehber. (Not: Linux için çok yeniyim. Kullandığım izinlerin güvenli olup olmadığından ya da bunu yapmanın daha iyi bir yolu olup olmadığından emin değilim. Bunu yalnızca test ortamında yapardım.)
ÖNEMLİ: Size nasıl yorumlanacağı hakkında bir şey söylemez. Nasıl yapılacağı hakkında hiçbir fikrim yok, sadece çalıştığı için mutluyum.
XHProf'u Çalıştırma
1. Hangi işletim sistemini kullanıyorsunuz?
Mac mi Linux mu?
Mümkün.
Pencereler?
Muhtemelen değil. Windows üzerinde xhprof çalıştırmak için derlenmiş bir dll olması gerekir. Bu iş parçacığında bir bağlantı var , ama XAMPP üzerinde kullanmaya çalıştığımda her zaman onunla uyumluluk sorunları vardı.
Sanırım farklı bir Apache sürümü ile derlendi.
2. Ubuntu üzerinde çalışmasını sağlamak
Mac'te mümkündür. İşte iki faydalı bağlantı:
http://www.lullabot.com/blog/article/instal-xhprof-mamp-and-php-52-mac-os-106-snow-leopard
http://www.midwesternmac.com/blogs/jeff-geerling / alma-xhprof-işçi de
Ama ben yapmadım. Ubuntu Server'ın son sürümlerinin işe yarayacağını düşünmeme rağmen Ubuntu Server 13.04 üzerinde çalışmayı başardım.
Sunucumu VirtualBox üzerinde kurdum. VirtualBox ücretsizdir ancak nasıl ayarlanacağını öğrenmek biraz zaman alabilir.
3. XHProf Kurulumu
Tamamen çalışan bir Ubuntu Sunucumuz olduğunu varsayacağım.
İlk önce armut yüklememiz gerekiyor. Bunu XHProf'u kurmak için kullanacağız.
sudo apt-get install pear
Bunu da gerekli olan phpdev ile takip ediyoruz.
sudo apt-get install php5-dev
Bu komutlar işe yaramazsa ve yanlış yaparsam, aşağıdakileri yapın:
sudo pecl install -f xhprof
Ubuntu size neyin eksik olduğunu söyleyecek ve yüklemenizi isteyecektir. Bir kez tüm bağımlılıkları var xhprof yükleyin.
Xhprof'i yüklerken bir hata alabilirsiniz, beta'yı indirmeye ve başarısız olmaya çalışacaktır. Bu durumda şunu deneyin:
sudo pecl install -f xhprof-beta
Umarım xhprof şimdi kurulmuştur.
Şimdi yapılandırmamız gerekiyor. Adresindeki php.ini dosyanızı açın /etc/php5/apache2/php.ini
ve uzantılar bölümünün altına aşağıdaki iki satırı ekleyin:
extension=xhprof.so
xhprof.output_dir="/var/tmp/xhprof"
İkinci satır çıktı dizinini ayarlar. Bu klasör yoksa onu oluşturmanız gerekir.
sudo service apache2 restart
4. XHProf'un çalışıp çalışmadığını kontrol etme
Şimdi bunun işe yarayıp yaramadığını kontrol etmeliyiz.
Test 1:
Giriş php -m
Listede xhprof görürseniz, gitmekte fayda var. Değilse endişelenmeyin, çalışıp çalışmadığını kontrol etmek için bunu deneyin:
Webroot'unuza gidin /var/www/
ve yalnızca bir php dosyası oluşturun:
phpinfo();
Phpinfo.php kaydedin. Bunu tarayıcınızda açın, PHP bilgilerini görmelisiniz. Xhprof arayın ve bunu görürseniz çalışır.
5. Drupal ile çalışma
Drupal modülüyle çalıştıramadım. Bunun yerine size bunun devel modülü ile nasıl çalışacağını anlatacağım.
Önce buradan ödünç aldığım bazı yapılandırmalar . Bu kısmı gerçekten takip etmedim, ama hediye atı ve tüm bunlar çok işe yarıyor.
Aşağıdaki komutla yeni bir yapılandırma dosyası oluşturun:
sudo nano /etc/apache2/conf.d/xhprof.conf
ve aşağıdaki kodu girin.
alias /xhprof_html "/usr/share/php/xhprof_html/"
O zaman muhtemelen xhprof_html klasörümüze bir sembolik bağlantı oluşturmanız gerekir. Yani bunu ayarlamanız durumunda:
ln -s / usr / share / php / xhprof_html / var / www / xhprof_html
Bu, web kökünüzde mevcut xhprof dosyasına işaret eden bir klasör oluşturur. Ardından tarayıcınızda yaptığınız tüm koşuları görmek için http://mywebsitehere.com/xhprof adresini açabilirsiniz .
Ardından apache'yi yeniden başlatın. Şimdi küçük bir devel yapılandırma zamanı. Geliştirme ayarlarına gidin, xhprof'u etkinleştirin ve ayarlayın:
xhprof directory = /usr/share/php
XHProf URL = /xhprof_html
Şimdi her sayfanın altında xhprof için küçük bir bağlantı görmelisiniz.
Ve tıklamak sizi böyle bir sayfaya götürmelidir. Sen bittin. Tebrikler!
Bu işe yaramadıysa ve çalışma hataları alıyorsanız, muhtemelen Drupal'ın daha önce ayarladığımız tmp klasörüne yazma izni olmadığından şunu girin:
sudo chown -R www-data /var/tmp/xhprof
Ve umarım bu işe yarar. Yapılmıştı. Hoorah!
Grafik fonksiyonları istemediğiniz sürece. Neyse ki bu kadar kolay:
sudo apt-get install graphviz
sudo service apache2 restart
Ve şimdi grafik fonksiyonlarına sahip olmalısınız. Umarım bu yardımcı olur!