PHP, dinamik web uygulamaları geliştirmek için yaygın olarak kullanılan bir programlama dilidir. Linux tabanlı sunucularda PHP kurulumu ve sürüm yönetimi, web sitelerinin performansını ve güvenliğini doğrudan etkileyen kritik bir süreçtir.
Eğer belirli bir PHP sürümünü yüklemek istiyorsanız, örneğin PHP 8.2 için:
Adım 3: PHP Sürümünü Doğrulayın
Çıkan listeden kullanmak istediğiniz PHP sürümünün numarasını girerek değişikliği yapabilirsiniz.
Örneğin, PHP 7.4 ve PHP 8.2’nin yüklü olduğu bir sistemde, her ikisini de kullanmak için:
Daha sonra, web sunucu konfigürasyon dosyasında ilgili siteler için PHP-FPM sürümünü belirleyebilirsiniz.
Apache için:
Nginx için:
Bu yapılandırmalardan sonra web sunucunuzu yeniden başlatın:
Önerilen ayarlar:
Yapılandırmaları değiştirdikten sonra PHP ve web sunucusunu yeniden başlatın:
Linux üzerinde PHP kurulumu ve sürüm yönetimi, web uygulamalarının güvenliği ve performansı açısından kritik bir konudur. Ubuntu, Debian, CentOS gibi popüler dağıtımlarda PHP’yi kurabilir, farklı sürümleri yönetebilir ve optimize edebilirsiniz. Bu rehberi takip ederek PHP’yi en iyi şekilde yapılandırabilirsiniz.
1. Linux’ta PHP Kurulumu
PHP’yi Linux sunucusuna yüklemek için kullanılan yöntemler, işletim sistemine bağlı olarak değişebilir. Aşağıda en yaygın Linux dağıtımları için PHP kurulum adımları verilmiştir.1.1 Ubuntu ve Debian İçin PHP Kurulumu
Ubuntu ve Debian tabanlı sistemlerde PHP’yi kurmak için aşağıdaki adımları takip edebilirsiniz:Adım 1: Paket Depolarını Güncelleyin
Öncelikle sisteminizdeki paketleri güncelleyin:
Bash:
sudo apt update && sudo apt upgrade -y
Adım 2: PHP ve Gerekli Modülleri Yükleyin
Aşağıdaki komut, varsayılan PHP sürümünü ve gerekli uzantıları yükler:
Bash:
sudo apt install php php-cli php-mysql php-xml php-mbstring php-curl -y
Bash:
sudo add-apt-repository ppa:ondrej/php -y
sudo apt update
sudo apt install php8.2 php8.2-cli php8.2-mysql php8.2-xml php8.2-mbstring php8.2-curl -y
Adım 3: PHP Versiyonunu Kontrol Edin
Yüklenen PHP sürümünü doğrulamak için:
Bash:
php -v
1.2 CentOS ve RHEL İçin PHP Kurulumu
CentOS ve Red Hat Enterprise Linux (RHEL) için PHP kurulumu aşağıdaki gibidir:Adım 1: Gerekli Depoları Etkinleştirin
Öncelikle EPEL ve Remi depolarını etkinleştirin:
Bash:
sudo yum install epel-release yum-utils -y
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-$(rpm -E %rhel).rpm -y
Adım 2: PHP Sürümünü Seçin ve Yükleyin
Örneğin PHP 8.2’yi yüklemek için:
Bash:
sudo yum module reset php
sudo yum module enable php:remi-8.2
sudo yum install php php-cli php-mysql php-xml php-mbstring php-curl -y
Bash:
php -v
2. PHP Sürüm Yönetimi
Linux’ta birden fazla PHP sürümünü kullanmak mümkündür. Örneğin, farklı projeler farklı PHP sürümleri gerektirebilir.2.1 Mevcut PHP Sürümlerini Listeleme
Sistemde yüklü PHP sürümlerini görmek için aşağıdaki komutu kullanabilirsiniz:
Bash:
update-alternatives --list php
2.2 PHP Sürümünü Değiştirme
Sisteminizde birden fazla PHP sürümü varsa, aktif olan sürümü değiştirmek için:
Bash:
sudo update-alternatives --config php
2.3 PHP-FPM Kullanarak Farklı PHP Sürümlerini Yönetme
Apache veya Nginx üzerinde belirli sitelerin farklı PHP sürümleriyle çalışmasını sağlamak için PHP-FPM kullanılabilir.Örneğin, PHP 7.4 ve PHP 8.2’nin yüklü olduğu bir sistemde, her ikisini de kullanmak için:
Bash:
sudo apt install php7.4-fpm php8.2-fpm -y
Apache için:
Apache config:
<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php/php8.2-fpm.sock|fcgi://localhost"
</FilesMatch>
</VirtualHost>
NGINX:
server {
listen 80;
server_name example.com;
root /var/www/html;
index index.php index.html;
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Bash:
sudo systemctl restart apache2 # Ubuntu/Debian için
sudo systemctl restart nginx # Nginx kullanıyorsanız
3. PHP Yapılandırma ve Optimizasyon
PHP’nin performansını ve güvenliğini artırmak için bazı yapılandırma değişiklikleri yapmak gerekebilir.3.1 PHP Konfigürasyon Dosyasını Düzenleme
PHP ayarlarını değiştirmek içinphp.ini
dosyasını düzenleyin:
Bash:
sudo nano /etc/php/8.2/apache2/php.ini # Ubuntu/Debian için
sudo nano /etc/php.ini # CentOS için
INI:
memory_limit = 512M
upload_max_filesize = 64M
post_max_size = 64M
max_execution_time = 300
Bash:
sudo systemctl restart apache2 # veya
sudo systemctl restart nginx