Apache Mod_Status Yapilandirmasi
Apache sunucunuzun performans değerlerini gözlemlemek için komut satırında kullanılabilecek bir çok native araç bulunuyor olsa da bazen sunucunun performans değerlerini, sunucuya login olmadan incelemek isteyebilirsiniz. Böyle bir iş için kullanılabilecek en güzel yöntem, apache ile birlikte default olarak gelen mod_status modülünden yararlanmak ve sunucu istatistiklarini bir web sayfası üzerinden görüntülemektir. Her nekadar mod_status apache ile birlikte öntanımlı olarak geliyor olsa da bu özelliği devreye almak için httpd.conf yapılandırma dosyasına küçük bir ekleme yapmak gerekiyor. |
Bu dökümanda, mod_status’ün nasıl devreye alınacağı anlatılmaktadır.
Mod_Status ile apache sunucunuzla ilgili performansa yönelik aşağıdaki bilgileri gerçek zamanlı olarak edinebilirsiniz.
Apache mod_proxy, mod_cache ile Reverse Proxy Kurulumu
Bilindiği gibi Ters Vekil Sunucu olarak bilinen Reverse Proxy uygulamaları adından da anlaşıldığı üzere normal proxy (bu da ne demekse) uygulamalarının ters şekilde çalışan versiyonudur. Yani normal bir proxy uygulamasında kullanıcı tarafında bulunan proxy sunucusu, reverse proxy mantığında web sunucusu tarafında bulunur ve kullanıcılar görüntülemek istedikleri bir web sitesi için ilgili web sunucusu yerine reverse proxy ile irtibata geçerler.Reverse Proxy ise kullanıcının istekleri doğrultusunda ilgilli web sitesine ait veriyi web sunucusundan çeker ve kullanıcıya iletir. |
Reverse proxy uygulamalarının birden fazla kullanım amacı bulunmaktadır. Bu makalede FreeBSD 7.0 üzerinde Apache web sunucusu kullanarak mod_proxy, mod_cache modülleri ile bir web sitesinin içeriğinin memoryde cachelenmesi ve performans artışı sağlanması anlatılmaktadır.
Php Upload File Size
Web tabanlı bir php uygulaması ile servera büyük ebatlı dosyalar upload etmek için php.ini’de default 2M olarak belirlenmiş olan upload_max_filesize ve post_max_size değerlerini arttırmanız gerekiyor.
Ancak web üzerinden yapılan upload işlemlerinde, upload edilen veri öncelikle Memory’e yazıldığı için bu değerleri çok arttırmanız durumunda sunucunuzda yeterli memory kalmamasına neden olabilirsiniz. Dolayısı ile bu değerleri girerken, ram miktarı ve sunucunun kullandığı memory miktarını göz önünde bulundurmakta fayda var. Yeni değerleri php.ini’ye girdiğiniz zaman apache’yi restart etmeniz gerekiyor.
Eaccelerator hit: httpd-error.log
Php’nin performanslı ve optimize çalışmasını sağlayan ve dinamik content cache işlemi yapan eAccelerator gerçekten de performansa süper katkıda bulunan bir yazılım. Ancak FreeBSD’de yaptığınız eAcceleretor kurulumunu, dökümanını okumadan direk ports dizini altından yaparsanız, httpd-error.log dosyasına “EACCELERATOR hit: “/usr/local/www/data-dist/blablabla.php” gibi çok sayıda satırın yazıldığını görebilirsiniz. Eğer yüksek trafiği olan bir siteniz var ise httpd-error.log dosyanız inanılmaz bir hızla çok büyük size değerlerine ulaşabilir.
Bu sorunu çözmeniz için yapmanız gereken şey, php.ini dosyanıza “eaccelerator.debug = 0” parametresini eklemektir.
Normal şartlarda dökümanı okuyarak source kurulumu yaparsanız, dökümanda php.ini’ye eklenmesi önerilen opsiyonlar arasında debug meselesi de mevcut. Ama dediğim gibi ports üzerinden kurup çalıştırırsanız -ki bu sorun dışında herhangi bir sorunla çıkarmadan çalışır- ilgili debug parametresini atlayabilirsiniz.
En azindan ben atladım.
FreeBSD Apache Http Accept Filter Warning
Eğer, FreeBSD üzerinde sorunsuz olarak kurulmuş olan Apache serverınız server start aşamasında “[warn] (2)No such file or directory: Failed to enable the ‘httpready’ Accept Filter” gibi bir hata veriyorsa sebebi accf_http modülü ile alakalıdır. Gelen baglantilari bufferlayan accf_http modulu yüklenemediği zaman bu warning mesajını alıyoruz.
Sorunu çözmek için aşağıdaki komutu verebilirsiniz:
# kldload accf_http
Ancak bu şekliyle sadece memory’ye yazıldığı için FreeBSD’iniz restart ettiğiniz zaman gene başa dönersiniz. Bu nedenle sorunu kalıcı olarak çözmek için /boot/loader.conf dosyasına aşağıdaki satırı ekleyebilirsiniz:
accf_http_load="YES"
Accf ile ilgili default ayarlar, /boot/defaults/loader.cnf dosyasının içinde durmaktadır. Kullanım şekillerini görmek için;
# grep accf /boot/defaults/loader.conf
komutunu verebilirsiniz.
Örnek çıktı:
accf_data_load="NO" # Wait for data accept filter accf_http_load="NO" # Wait for full HTTP request accept filter