PHP-FPM Nedir ve Neden Önemlidir?
PHP-FPM, PHP'nin daha hızlı çalışmasını sağlayan bir işlem yöneticisidir. Birçok web sunucusu, PHP dosyalarını işlemek için mod_php kullanır, ancak PHP-FPM bu süreci daha verimli hale getirir. PHP-FPM ile, PHP işlemleri, bağımsız işleme birimleri (pool) tarafından yönetilir ve her bir işleme, ayrı bir işlem havuzu ile çalışır. Bu, yüksek trafikli sitelerde performansı önemli ölçüde artırabilir.
PHP-FPM kullanmanın faydaları şunlardır:
- Yüksek Trafik Yönetimi: PHP-FPM, çok sayıda kullanıcıya aynı anda hizmet vermek için idealdir.
- Hızlı Yanıt Süreleri: Sunucu yükü daha dengeli dağıtılır, bu da daha hızlı yanıt süreleri anlamına gelir.
- Daha Düşük Bellek Tüketimi: İşlem havuzları, sadece gerekli olduğunda PHP işlemleri başlatır.
Adım Adım PHP-FPM Kurulumu
Şimdi, Linux sisteminize PHP-FPM'i nasıl kuracağınızı gösterelim. Bu örnekte Ubuntu ve Debian tabanlı sistemler için adımları vereceğiz, ancak diğer Linux dağıtımları için de benzer adımlar uygulanabilir.
1. PHP-FPM'i Yükleme
İlk adım, PHP-FPM paketini yüklemektir. PHP-FPM, PHP'nin resmi depo kaynaklarında bulunduğu için yüklemesi oldukça basittir. Terminali açın ve aşağıdaki komutu çalıştırın:
sudo apt update
sudo apt install php-fpm
Bu komut, PHP-FPM'i sisteminize indirip yükleyecektir. Yükleme tamamlandıktan sonra, PHP-FPM servisi otomatik olarak başlatılır.
2. PHP-FPM Konfigürasyonu
PHP-FPM'in doğru çalışabilmesi için bazı yapılandırma ayarlarını yapmamız gerekiyor. PHP-FPM’in yapılandırma dosyası genellikle `/etc/php/{PHP_VERSION}/fpm/pool.d/www.conf` yolunda bulunur. Burada `{PHP_VERSION}` kısmı, sisteminizdeki PHP sürümüne göre değişecektir.
Bu dosyayı düzenlemek için, aşağıdaki komutla dosyayı açın:
sudo nano /etc/php/7.4/fpm/pool.d/www.conf
Bu dosyada yapmanız gereken bazı temel ayarlar şunlardır:
- user ve group: PHP-FPM işlemlerinin hangi kullanıcı ve grup altında çalışacağını belirler. Genellikle bu değerler `www-data` olmalıdır.
- listen: PHP-FPM'in hangi sokette dinleyeceğini belirler. Örneğin, `127.0.0.1:9000` gibi bir adresle dinleyebilirsiniz.
3. PHP-FPM ve Nginx Entegrasyonu
PHP-FPM'i kurduktan sonra, bir web sunucusu ile entegrasyon yapmamız gerekiyor. Genellikle Nginx ile birlikte kullanılır çünkü Nginx, PHP-FPM ile çalışmak için mükemmel bir uyum sağlar.
Nginx yapılandırma dosyasını açmak için şu komutu kullanın:
sudo nano /etc/nginx/sites-available/default
Dosyanın içinde, `location ~ \.php$ {}` bölümünü aşağıdaki gibi düzenleyin:
server {
listen 80;
server_name example.com;
root /var/www/html;
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
Bu ayarlarla, Nginx PHP-FPM üzerinden PHP dosyalarını çalıştıracak.
4. PHP-FPM ve Nginx’i Yeniden Başlatma
Yapılandırma dosyalarını düzenledikten sonra, Nginx ve PHP-FPM servislerini yeniden başlatmamız gerekiyor. Aşağıdaki komutları sırasıyla çalıştırarak bu işlemi gerçekleştirebilirsiniz:
sudo systemctl restart php7.4-fpm
sudo systemctl restart nginx
5. PHP-FPM Durumunu Kontrol Etme
PHP-FPM servisinin doğru çalışıp çalışmadığını kontrol etmek için şu komutu kullanabilirsiniz:
sudo systemctl status php7.4-fpm
Eğer her şey doğruysa, "active (running)" olarak görmelisiniz.
PHP-FPM Performans Ayarları
PHP-FPM, performansı optimize etmek için birçok yapılandırma seçeneği sunar. En önemli ayarlardan biri, işleme havuzlarının boyutudur. Bu ayar, sunucunuzun kapasitesine göre belirlenmelidir. `www.conf` dosyasındaki şu satırlarda değişiklik yapabilirsiniz:
pm = dynamic
pm.max_children = 50
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
Bu ayarlar, PHP-FPM'in ihtiyaç duyduğu kadar işlem başlatmasını ve fazla yük olmadığında işlem sayısını düşürmesini sağlar. Bu sayede sistem kaynakları verimli bir şekilde kullanılır.
Sonuç
PHP-FPM, PHP uygulamalarınızın performansını ciddi şekilde artırabilir ve web sunucunuzun daha verimli çalışmasını sağlar. Linux'ta PHP-FPM kurulumunu başarıyla gerçekleştirdikten sonra, Nginx ile entegrasyonu da tamamladık. Artık yüksek trafikli sitelerinizde PHP-FPM'in gücünden faydalanabilirsiniz.
Özetle:
- PHP-FPM, web sitenizin hızını ve verimliliğini artırır.
- Adım adım PHP-FPM kurulumu ve yapılandırmasını yaptık.
- Performans ayarları ile PHP-FPM'i daha verimli hale getirebilirsiniz.
Umarım bu rehber, Linux üzerinde PHP-FPM kurulumunda size yardımcı olmuştur. Artık daha hızlı ve verimli bir web sunucusuna sahipsiniz! Eğer herhangi bir sorunla karşılaşırsanız, yorumlarda sorularınızı sorabilirsiniz.