PHP-FPM Nedir ve Neden Kullanılır?
PHP-FPM, web sitenizin PHP sayfalarını daha hızlı bir şekilde işlemek için tasarlanmış bir FastCGI yönetim aracıdır. Bu, özellikle yüksek trafikli web sitelerinde önemli bir performans artışı sağlar. PHP-FPM, birden fazla PHP işlemciyi yönettiği için, her PHP işlemi bir işlemciye atanır ve bu da web sunucusunun yükünü azaltarak yanıt sürelerini kısaltır.
Linux'ta PHP-FPM Kurulumu
PHP-FPM’yi kurmaya başlamadan önce, kullandığınız Linux dağıtımına göre bazı farklılıklar olabilir. Ama endişelenmeyin, kurulum işlemi oldukça basit.
Adım 1: PHP-FPM Paketi Yükleme
İlk olarak, PHP-FPM paketini yüklememiz gerekiyor. Eğer Debian tabanlı bir sistem kullanıyorsanız (örneğin Ubuntu), aşağıdaki komutu terminalde çalıştırarak PHP-FPM’yi yükleyebilirsiniz:
sudo apt update
sudo apt install php-fpm
RedHat tabanlı bir dağıtım (örneğin CentOS) kullanıyorsanız, şu komutla kurulum yapabilirsiniz:
sudo yum install php-fpm
Adım 2: PHP-FPM Servisini Başlatma
PHP-FPM kurulduktan sonra, servisi başlatmanız gerekiyor. PHP-FPM servisini başlatmak için aşağıdaki komutu kullanabilirsiniz:
sudo systemctl start php-fpm
Ayrıca, PHP-FPM’nin her sistem başlatıldığında otomatik olarak başlamasını istiyorsanız, şu komutu kullanarak servisi etkinleştirebilirsiniz:
sudo systemctl enable php-fpm
PHP-FPM Yapılandırma Ayarları
PHP-FPM’nin performansını artırmak için bazı yapılandırma ayarlarını düzenlemeniz gerekebilir. Bu ayarlar genellikle `/etc/php/7.x/fpm/pool.d/www.conf` dosyasında yer alır (kullandığınız PHP sürümüne göre yolu değiştirebilirsiniz).
Adım 1: Kullanıcı ve Grup Ayarları
PHP-FPM’nin çalışacağı kullanıcı ve grubu ayarlamak, güvenlik açısından önemlidir. `www.conf` dosyasını düzenlemek için aşağıdaki komutu çalıştırabilirsiniz:
sudo nano /etc/php/7.x/fpm/pool.d/www.conf
Dosya içinde `user` ve `group` satırlarını bulup, bu satırları kendi sisteminizdeki web sunucusuna uygun olacak şekilde ayarlayın:
user = www-data
group = www-data
Bu ayarlar, PHP-FPM’nin web sunucusuyla uyumlu şekilde çalışmasını sağlar.
Adım 2: PHP-FPM İşlem Sayısı Ayarı
PHP-FPM’nin işleme sayısı, sunucunuzun donanımına ve trafiğe bağlı olarak değişebilir. Yüksek trafiği olan bir site için işlem sayısını artırmak faydalı olacaktır. Bu ayarı `pm.max_children` satırını düzenleyerek yapabilirsiniz.
pm.max_children = 50
Burada, PHP-FPM’nin aynı anda 50 iş parçacığı çalıştırmasına izin veriyoruz. Daha fazla işlemci gücüne sahip bir sunucuda, bu sayıyı artırarak daha iyi bir performans elde edebilirsiniz.
Adım 3: PHP-FPM Bellek Ayarları
PHP-FPM’nin bellek kullanımı da performansı doğrudan etkileyebilir. Bu yüzden bellek limitini ayarlamak önemlidir. `php.ini` dosyasını açarak `memory_limit` parametresini artırabilirsiniz.
sudo nano /etc/php/7.x/fpm/php.ini
Ve ardından `memory_limit` satırını şu şekilde güncelleyebilirsiniz:
memory_limit = 256M
Bu, PHP’nin her işlem için 256MB bellek kullanmasına izin verecektir.
PHP-FPM ve Nginx Entegrasyonu
PHP-FPM, genellikle Nginx gibi hafif ve hızlı bir web sunucusuyla birlikte kullanılır. PHP-FPM ile Nginx’i entegre etmek oldukça basittir. İşte temel Nginx konfigürasyonu:
1. Nginx Konfigürasyon Dosyasını Düzenleyin
Nginx konfigürasyon dosyasını açın:
sudo nano /etc/nginx/sites-available/default
2. PHP-FPM İçin Konfigurasyonu Ekleyin
Aşağıdaki satırları konfigürasyon dosyasına ekleyin:
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.php;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.x-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
3. Nginx’i Yeniden Başlatın
Yaptığınız değişikliklerin geçerli olması için Nginx servisini yeniden başlatmanız gerekecek:
sudo systemctl restart nginx
PHP-FPM’nin Çalıştığını Test Etme
PHP-FPM’in düzgün çalışıp çalışmadığını kontrol etmek için basit bir `info.php` dosyası oluşturabilirsiniz.
1. info.php Dosyasını Oluşturun
`/var/www/html` dizininde aşağıdaki gibi bir PHP dosyası oluşturun:
2. Web Tarayıcınızda Test Edin
Tarayıcınızda `http://your-server-ip/info.php` adresine gidin. Eğer PHP-FPM doğru şekilde çalışıyorsa, PHP yapılandırma bilgilerini göreceksiniz.
Sonuç
PHP-FPM’nin doğru yapılandırılması, sitenizin hızını önemli ölçüde artırabilir ve özellikle yüksek trafikli sitelerde büyük fark yaratabilir. Bu yazıda, PHP-FPM’nin kurulumu ve temel yapılandırma adımlarını detaylı bir şekilde inceledik. Şimdi, sizin de PHP-FPM ile web sitenizin performansını artırmanız için her şey hazır!