LEMP yığını; Linux, Engine-X (Nginx), MariaDB/MySQL ve PHP bileşenlerinden oluşur ve PHP tabanlı web uygulamalarını barındırmanın en popüler yollarından biridir. Bu rehberde Ubuntu 22.04/24.04 VDS sunucuya LEMP kurulumunu adım adım yapacağız.
Gereksinimler
- Ubuntu 22.04 veya 24.04 kurulu bir VDS sunucu.
- sudo yetkisine sahip bir kullanıcı.
- Sunucuya yönlendirilmiş bir alan adı (isteğe bağlı ama önerilir).
1. Adım: Sistemi güncelleyin
sudo apt update && sudo apt -y upgrade2. Adım: Nginx kurulumu
sudo apt install -y nginx
sudo systemctl enable --now nginxGüvenlik duvarında web trafiğine izin verin:
sudo ufw allow 'Nginx Full'Tarayıcınızda sunucu IP adresinizi açtığınızda Nginx karşılama sayfasını görmelisiniz.
3. Adım: MariaDB kurulumu
sudo apt install -y mariadb-server
sudo systemctl enable --now mariadb
sudo mysql_secure_installationGüvenlik sihirbazında anonim kullanıcıları kaldırmayı, uzaktan root girişini kapatmayı ve test veritabanını silmeyi onaylayın.
Uygulamanız için veritabanı oluşturun
sudo mariadbCREATE DATABASE uygulama CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'uygulama_kullanici'@'localhost' IDENTIFIED BY 'GucluBirSifre!';
GRANT ALL PRIVILEGES ON uygulama.* TO 'uygulama_kullanici'@'localhost';
FLUSH PRIVILEGES;
EXIT;4. Adım: PHP-FPM kurulumu
Nginx, PHP dosyalarını PHP-FPM aracılığıyla çalıştırır. PHP ve yaygın eklentileri kurun:
sudo apt install -y php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl
php -vKomut çıktısındaki sürümü not edin (örneğin 8.3); Nginx yapılandırmasında bu sürüme ait soket dosyasını kullanacağız.
5. Adım: Nginx server block yapılandırması
Siteniz için bir dizin oluşturun:
sudo mkdir -p /var/www/alanadiniz.com
sudo chown -R $USER:www-data /var/www/alanadiniz.comYeni bir yapılandırma dosyası açın:
sudo nano /etc/nginx/sites-available/alanadiniz.comAşağıdaki içeriği ekleyin (php8.3-fpm.sock kısmını kendi PHP sürümünüze göre düzenleyin):
server {
listen 80;
server_name alanadiniz.com www.alanadiniz.com;
root /var/www/alanadiniz.com;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /\.(?!well-known) {
deny all;
}
}Siteyi etkinleştirin, yapılandırmayı test edin ve Nginx'i yeniden yükleyin:
sudo ln -s /etc/nginx/sites-available/alanadiniz.com /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx6. Adım: PHP'yi test edin
echo "<?php phpinfo();" | sudo tee /var/www/alanadiniz.com/info.phpTarayıcıda http://alanadiniz.com/info.php adresini açın. PHP bilgi sayfasını görüyorsanız kurulum başarılıdır.
info.php dosyası sunucunuz hakkında hassas bilgiler gösterir. Testten sonra mutlaka silin: sudo rm /var/www/alanadiniz.com/info.php
7. Adım: SSL ekleyin
Son olarak sitenizi HTTPS'e taşıyın. Adım adım anlatım için Let's Encrypt SSL kurulum rehberimize göz atın.
Sonuç
LEMP sunucunuz WordPress, Laravel veya herhangi bir PHP uygulamasını barındırmaya hazır. Yüksek performanslı bir altyapı için NVMe SSD diskli VDS sunucularımızı inceleyebilirsiniz.
Sık Sorulan Sorular
LEMP ile LAMP arasındaki fark nedir?
LAMP Apache web sunucusunu, LEMP ise Nginx'i kullanır. Nginx, yüksek eş zamanlı bağlantılarda daha az bellek tüketir.
Hangi PHP sürümünü kullanmalıyım?
Ubuntu depolarındaki varsayılan PHP sürümü güvenlik güncellemelerini alır ve çoğu proje için yeterlidir. Uygulamanızın desteklediği en güncel sürümü tercih edin.
