Öğrenme Çıktısı: PHP derleyicisini yapılandırabileceksiniz.
PHP’nin Yapılandırılması
PHP’nin birbirinden oldukça farklı sayılabilecek amaçlarla kullanılabiliyor olması, yapılandırma ayarlarının son derece esnek bir şekilde değiştirilebilmesinden kaynaklanmaktadır. PHP, Web ya da Web harici projeleri kapsayan pek çok amaca göre yapılandırılabilmektedir. Ayrıca PHP, varolan yapılandırmanın listelenmesini sağlayan “phpinfo()” adlı bir fonksiyon barındırır. Aşağıda bu fonksiyonun basitçe kullanımı görülmektedir.

Yukarıdaki kodun oluşturduğu sayfanın ziyaret edilmesi, Resim 2.12’de sunulan görüntüyü oluşturacaktır. Sol taraftaki kaydırma çubuğunun boyutundan da anlaşılacağı üzere bu sayfa, halihazırdaki PHP yapılandırmasına ilişkin hemen her veriyi içeren oldukça dolu bir içeriğe sahiptir. Herhangi bir yapılandırma değişkeninin değeri, bileşenlerin versiyon numaraları veya bir modülün yüklü olup olmadığı gibi bilgilere bu sayfa aracılığıyla ulaşılabilir.

Resim 2.12 PHP’nin Yapılandırma Özelliklerini Sunan Sayfa.
PHP’nin, phpinfo sayfası üzerinde görüntülenen yapılandırma ayarlarının değiştirilmesi için, yapılandırma dosyasına ulaşmak ve gerekli değişiklikleri yapmak yeterlidir. “php.ini” adıyla kayıtlı olan bu dosya, PHP’nin çalışma amacına göre özelleştirilebilmesi açısından oldukça önemlidir. Sunucu üzerinde yapılabilecek basit bir aramayla ulaşılabilecek olan “php.ini” dosyasına, görev çubuğunda yer alan WampServer ikonu üzerinden de ulaşılabilir (Resim 2.13).

Resim 2.13 php.ini Adlı Dosyaya WampServer İkonu Üzerinden Ulaşılması.
Resim 2.14’te örnek bir görünümü verilen php.ini dosyası üzerindeki satırları değiştirerek veya yeni satırlar ekleyerek PHP derleyicisinin çalışma yapılandırılması önemli ölçüde değiştirilebilir. Ancak bu dosya, yapılandırma satırları içerdiği gibi yapılandırma satırlarına ilişkin açıklamalar da içerebilmektedir. “;” karakteri ile başlayan satırlar, PHP yapılandırmasının okunması sırasında dikkate alınmazlar. Ancak Resim 2.14’deki örneğin son satırında da görüldüğü gibi, ; ile başlamayan satırlar yapılandırma değişkenlerini ve bu değişkenlerin değerlerini içerirler.

Resim 2.14 php.ini Adlı Dosyadan Örnek Bir Görünüm.
Yapılandırma dosyasında değişiklikler yapılarak PHP’ye ilişkin yüzlerce özellik değiştirilebilir. Ünitenin devamında, söz konusu değişikliklerin neler olabileceği örneklendirilecektir. Yukarıda değinildiği gibi, PHP kodlarının başladığını ve bittiğini belirtmek üzere etiketleri kullanılmaktadır. php.ini adlı dosyaya yer alacak “short_open_tag = On” ifadesi, etiketinin de PHP kodlarının başlangıcını belirtmesini sağlayacaktır. Bu ifadede yer alan “On” değerinin “Off” olarak değiştirilmesi ise, anlaşılacağı üzere ifadesini zorunlu kılacaktır.
PHP derleyicisinin derlediği kodları çalıştırma anlamındaki zaman sınırı da php.ini dosyası üzerinden değiştirilebilir. Bunun için “max_execution_time” ifadesinin değeri değiştirilmelidir. Bu ifadenin karşısında yazan değer, saniye cinsinden maksimum çalışma süresini ifade eder. Örneğin “max_execution_time=60” şeklindeki kullanım, derlenmiş bir PHP kodunun en fazla 60 saniye çalışmasını sağlar. Söz konusu sürenin dolması durumunda, kod kendi çalışmasını henüz sonlandırmamış bile olsa, sistem tarafından sonlandırılır.
PHP tarafından verilen hata mesajlarına ilişkin yapılandırma için en sık kullanılan değişken “error_reporting” adlı olanıdır. Bu değişkenin karşısına yazılan ifade, PHP derleyicisinin derleme sırasında oluşturduğu hataların, uyarıların ya da bildirimlerin görüntülenme durumunu değiştirecektir. Örneğin “error_reporting = E_ALL” şeklindeki kullanım hata, uyarı ve bildirimlerin görüntülenmesini sağlar. “error_reporting = E_ALL & ~E_NOTICE” şeklindeki kullanım ise, bildirimlerin (notice) dışındaki mesajların, yani yalnızca hata ve uyarıların görüntülenmesini sağlar.
“file_uploads” değişkeninin karşısına yazılacak “On” değeri, PHP ile sunucuya dosya yükleme olanağı sağlanmış olur. Söz konusu değişkenin “Off” değerini alması ise, PHP ile dosya alımının engellenmiş olması anlamına gelir.
PHP ile oluşturan sayfayı ziyaret eden kullanıcıların tarayıcılarındaki durma butonuna basması, farklı bir adrese yönlenmesi veya tarayıcısını kapatması gibi durumlarda, henüz derlenip çalıştırılmakta olan PHP kodlarının çalıştırılmaya devam edip etmemesine yönelik bir yapılandırma da söz konusudur. php.ini adlı dosyaya eklenecek “ignore_user_abort” ifadesinin karşısına yazılacak değer, bunun ifade edilmesini sağlayacaktır. “ignore_user_abort=On” şeklindeki kullanım, kullanıcı ziyaretini sonlandırsa bile PHP kodunun çalışmaya devam etmesini sağlayacaktır. “ignore_user_abort=Off” ifadesi ise, kullanıcının ziyaretini sonlandırması durumunda PHP kodunun derlenmesini de sonlandıracaktır. PHP’nin yapılandırma ayarlarıyla ilgili detaylı bilgi edinmek için bu paragrafın yanındaki karekodun ulaştırdığı sayfa incelenebilir.
Araştır 4: PHP hatalarının sistem günlüğü dosyasına kaydedilmemesini sağlamak için gereken yapılandırma düzenlemesini gerçekleştiriniz.
İlişkilendir: phpinfo(); fonksiyonunu kullanarak kurulumunu yaptığınız localhost paket programındaki yapılandırma bilgilerinin dökümünü görüntüleyiniz.
Anlat/Paylaş: PHP yapılandırma süreçlerinde karşılaştığınız zorlukları ve çözümlerinizi paylaşınız.