Linux'ta PHP-FPM Kurulumu ve Yapılandırması: Adım Adım Kılavuz

Bu yazıda, Linux üzerinde PHP-FPM kurulumunu ve yapılandırmasını adım adım anlattık. Nginx veya Apache kullanarak PHP-FPM’in nasıl yapılandırılacağına dair detaylı bilgi verdik. Ayrıca, PHP-FPM performans optimizasyonları hakkında da ipuçları sunduk.

BFS

PHP-FPM, PHP uygulamalarını hızlı ve verimli bir şekilde çalıştırmak için kullanılan güçlü bir araçtır. Web siteniz için yüksek performans istiyorsanız, PHP-FPM’i kullanmak harika bir seçim olacaktır. Ancak, doğru bir şekilde kurmak ve yapılandırmak önemlidir. Neyse ki, bu süreç oldukça basit ve size adım adım rehberlik edeceğim.

PHP-FPM Nedir ve Neden Kullanılır?
PHP-FPM (FastCGI Process Manager), PHP’nin hızlı ve verimli bir şekilde çalışmasını sağlamak için kullanılan bir FastCGI yönetim aracıdır. PHP-FPM, yüksek trafikli web siteleri için ideal bir çözümdür çünkü her PHP isteği için yeni bir işlem oluşturmaz. Bu da sunucunun daha verimli çalışmasını sağlar.

Web sunucusu olarak Nginx veya Apache kullanıyor olabilirsiniz. PHP-FPM, bu iki sunucu ile mükemmel şekilde çalışır, fakat özellikle Nginx ile daha iyi performans sergiler. Bu yüzden, PHP-FPM’i doğru kurmak, sunucunuzun verimliliğini artırabilir.

Adım 1: PHP-FPM Kurulumuna Başlayalım
İlk olarak, PHP-FPM’i Linux sisteminize kurmalısınız. Bu işlem, kullanılan Linux dağıtımına göre değişir. Aşağıda, Debian/Ubuntu ve CentOS/RHEL için PHP-FPM kurulum komutlarını bulabilirsiniz.

#### Debian/Ubuntu İçin PHP-FPM Kurulumu
Debian veya Ubuntu tabanlı bir sistem kullanıyorsanız, aşağıdaki komutları kullanarak PHP-FPM'i kurabilirsiniz:


sudo apt update
sudo apt install php-fpm


# CentOS/RHEL İçin PHP-FPM Kurulumu
CentOS veya RHEL kullanan bir sistemde PHP-FPM’i kurmak için şu komutları kullanın:


sudo yum install epel-release
sudo yum install php-fpm


Bu komutları çalıştırarak PHP-FPM kurulumunu tamamlayabilirsiniz. Şimdi, PHP-FPM’in kurulu olduğunu doğrulamak için aşağıdaki komutu kullanabilirsiniz:


php-fpm -v


Eğer doğru bir şekilde kurulduysa, PHP-FPM’in sürüm bilgilerini görmelisiniz.

Adım 2: PHP-FPM Yapılandırması
Kurulumdan sonra, PHP-FPM’i yapılandırmamız gerekiyor. PHP-FPM yapılandırma dosyası genellikle `/etc/php/7.x/fpm/php-fpm.conf` veya `/etc/php-fpm.d/www.conf` gibi bir yolda bulunur. Burada PHP-FPM’in çalışma parametrelerini düzenleyeceğiz.

Öncelikle, PHP-FPM yapılandırma dosyasını bir metin düzenleyici ile açın:


sudo nano /etc/php/7.x/fpm/php-fpm.conf


Yapılandırma dosyasını açtıktan sonra, aşağıdaki önemli ayarları kontrol edebilirsiniz:

- user: PHP-FPM’in çalışacağı kullanıcıyı belirler. Genellikle `www-data` veya `nginx` kullanıcıları tercih edilir.
- group: PHP-FPM’in çalışacağı grup.
- listen: PHP-FPM’in dinleyeceği port veya soket yolu. Nginx ile kullanıyorsanız genellikle bir soket kullanılır.

Ayrıca, PHP-FPM’in dinlediği IP adresini ve portu değiştirebilirsiniz. Örneğin, `127.0.0.1:9000` yerine bir Unix soketi kullanmak, performans açısından daha iyi olabilir.

Yapılandırma dosyasındaki diğer ayarları ise ihtiyaçlarınıza göre değiştirebilirsiniz. Yapılandırmayı tamamladıktan sonra dosyayı kaydedip kapatın.

Adım 3: PHP-FPM’i Başlatma ve Test Etme
Yapılandırma işlemi tamamlandıktan sonra, PHP-FPM servisini başlatabiliriz:


sudo systemctl start php7.x-fpm
sudo systemctl enable php7.x-fpm


Bu komutlar PHP-FPM servisinin başlatılmasını ve sistem yeniden başlatıldığında otomatik olarak çalışmasını sağlar. PHP-FPM’in düzgün çalışıp çalışmadığını test etmek için şu komutu kullanabilirsiniz:


sudo systemctl status php7.x-fpm


Eğer her şey doğru şekilde yapılandırılmışsa, PHP-FPM çalışıyor olmalıdır.

Adım 4: Web Sunucusunu Yapılandırma
PHP-FPM’i kurduktan sonra, web sunucusunu yapılandırmamız gerekiyor. Eğer Nginx kullanıyorsanız, PHP-FPM ile entegrasyonu sağlamak oldukça basittir. Nginx yapılandırma dosyasını açın:


sudo nano /etc/nginx/sites-available/default


Aşağıdaki gibi bir PHP-FPM konfigürasyonu eklemeniz gerekebilir:


server {
    listen 80;
    server_name example.com;

    root /var/www/html;
    index index.php index.html index.htm;

    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;
    }
}


Yukarıdaki yapılandırmada, Nginx PHP dosyalarını PHP-FPM ile işlemeye yönlendirecektir. Bu yapılandırmayı kaydedin ve Nginx’i yeniden başlatın:


sudo systemctl restart nginx


Adım 5: PHP-FPM Performansını Optimize Etme
PHP-FPM’i kurduktan sonra, sisteminizi optimize etmeniz önemli olacaktır. Özellikle yüksek trafiğe sahip bir site işletiyorsanız, PHP-FPM’in performansını arttırmak için birkaç ayar yapabilirsiniz:

- pm.max_children: PHP-FPM’in aynı anda çalıştırabileceği maksimum işlem sayısını belirler. Trafiğiniz arttıkça bu sayıyı yükseltebilirsiniz.
- pm.start_servers: PHP-FPM’in başlatılacak ilk işlem sayısını belirtir. Sunucunuzun RAM miktarına göre bu değeri ayarlayabilirsiniz.

Bu ayarları PHP-FPM’in `www.conf` dosyasından değiştirebilirsiniz. Örneğin:


pm.max_children = 50
pm.start_servers = 5


Yapılandırma değişikliklerini yaptıktan sonra, PHP-FPM servisini yeniden başlatmayı unutmayın:


sudo systemctl restart php7.x-fpm


### Sonuç
Linux üzerinde PHP-FPM kurulumu ve yapılandırması oldukça basit bir süreçtir. Ancak doğru yapılandırma, PHP uygulamalarınızın daha hızlı ve verimli çalışmasını sağlayacaktır. Yukarıda verdiğim adımları takip ederek PHP-FPM’i sorunsuz bir şekilde kurabilir ve optimize edebilirsiniz. Unutmayın, her web sitesi farklıdır, bu yüzden ayarları kendi ihtiyacınıza göre yapmalısınız. PHP-FPM ile yüksek performanslı ve ölçeklenebilir bir web sunucusuna sahip olabilirsiniz.

İlgili Yazılar

Benzer konularda diğer yazılarımız

PHP Undefined Function Hatası ve Çözümü: Ne Oldu? Ne Yapmalısınız?

PHP'de program yazarken, karşınıza çıkan hatalardan biri de "Undefined Function" hatasıdır. Bu hata, çoğu zaman deneyimsiz geliştiricilerin canını sıkabilir. Peki, nedir bu "Undefined Function" hatası ve nasıl çözülür? İşte bu yazıda, bu hatanın ne olduğunu,...

PHP "Warning: Division by zero" Hatası: Sorun, Çözüm ve Dikkat Edilmesi Gerekenler

PHP dünyasında, programcıların karşılaştığı en yaygın hatalardan biri olan "Warning: Division by zero" hatasını ele alıyoruz. Bu hata, küçük bir bölücü hatasından dolayı uygulamanızın çalışmasını engelleyebilir. Hadi, bu hatayı daha yakından inceleyelim...

Plesk’te E-posta Filtresi Sorunları: Bilinmeyen Sebepler ve İpuçlarıyla Derinlemesine Çözüm Rehberi

E-posta filtreleme sorunları, çoğu kullanıcı için günümüzün en yaygın teknik problemlerinden biri haline geldi. Özellikle **Plesk** kullanan web yöneticileri ve işletme sahipleri, bu sorunlarla karşılaştığında bazen en basit çözümü bile gözden kaçırabiliyorlar....