Ubuntu sunucularında LEMP yığını (Linux, Nginx, MySQL/MariaDB ve PHP) kurmak, yüksek performanslı web uygulamaları geliştirmek ve barındırmak için ideal bir yaklaşımdır.
Ubuntu sunucularında LEMP yığını (Linux, Nginx, MySQL/MariaDB ve PHP) kurmak, yüksek performanslı web uygulamaları geliştirmek ve barındırmak için ideal bir yaklaşımdır. Nginx’in hafif ve verimli yapısı, geleneksel Apache sunucularına kıyasla daha fazla eşzamanlı bağlantıyı desteklerken, PHP-FPM ile entegre çalışması dinamik içerikleri hızlıca işler. Bu kurulum rehberi, kurumsal ortamlar için adım adım talimatlar sunarak, sunucunuzu profesyonel bir web sunucusuna dönüştürmenizi sağlar. Ubuntu’nun LTS sürümlerini (örneğin 22.04 veya 20.04) tercih edin, çünkü bunlar uzun süreli destek ve kararlılık sunar. Kurulum öncesi sunucunuzun root erişimine sahip olduğunuzdan emin olun ve yedekleme yapmayı unutmayın.
LEMP kurulumuna başlamadan önce Ubuntu sunucunuzu en son sürüme güncellemek kritik öneme sahiptir. Bu adım, güvenlik açıklarını kapatır ve paket uyumluluğunu sağlar. Terminali açın ve şu komutları sırayla çalıştırın: sudo apt update ile paket listesini yenileyin, ardından sudo apt upgrade -y ile tüm güncellemeleri uygulayın. Bu işlem, sisteminizi olası uyumsuzluklara karşı korur ve yeni özelliklerden yarar sağlar. Güncelleme tamamlandıktan sonra yeniden başlatma yapın: sudo reboot.
UFW (Uncomplicated Firewall) ile temel güvenlik önlemlerini alın. Nginx için HTTP (80) ve HTTPS (443) portlarını etkinleştirin: sudo ufw allow 'Nginx Full' ve sudo ufw enable. Fail2ban gibi araçları kurarak brute-force saldırılarına karşı koruma ekleyin: sudo apt install fail2ban -y. Bu hazırlıklar, kurulum sürecini sorunsuz hale getirir ve sunucunuzu üretim ortamına hazırlar. Yaklaşık 10-15 dakika süren bu aşama, sonraki adımların temelini oluşturur ve olası kesintileri önler.
Nginx, LEMP yığınının temel taşıdır ve statik dosyaları yüksek hızda sunar. Kurulum için sudo apt install nginx -y komutunu kullanın. Kurulum sonrası servis durumunu kontrol edin: sudo systemctl status nginx. Başarılıysa yeşil “active” durumunu göreceksiniz. Varsayılan siteyi etkinleştirin: sudo systemctl start nginx ve sudo systemctl enable nginx ile açılışta otomatik başlatın. Tarayıcıdan sunucu IP’nizi ziyaret ederek Nginx hoş geldin sayfasını doğrulayın. Bu, trafiği yönetme ve load balancing için optimize edilmiş yapılandırmayı hazırlar.
MariaDB, MySQL’in açık kaynaklı fork’u olarak yüksek performans ve uyumluluk sunar. sudo apt install mariadb-server -y ile kurun. Ardından sudo systemctl start mariadb ve sudo systemctl enable mariadb ile yönetin. Güvenlik için sudo mysql_secure_installation çalıştırın; root parolası belirleyin, anonim kullanıcıları silin ve uzak root erişimini devre dışı bırakın. Bu script, veritabanını üretim için güvenli kılar. Test için sudo mysql -u root -p ile giriş yapın ve SHOW DATABASES; sorgusunu çalıştırarak doğrulayın. MariaDB, PHP uygulamalarınız için güvenilir veri depolama sağlar.
PHP 8.1 veya üstü için sudo apt install php-fpm php-mysql php-cli php-common php-mbstring php-xml php-zip -y komutunu uygulayın. PHP-FPM, Nginx ile dinamik işleme için gereklidir. Versiyonu kontrol edin: php -v. Servisi başlatın: sudo systemctl start php8.1-fpm (sürümünüze göre ayarlayın) ve sudo systemctl enable php8.1-fpm. Bu modüller, WordPress veya Laravel gibi CMS’ler için tam destek sağlar. Kurulum sonrası PHP işlemlerinin sorunsuz çalıştığından emin olun.
Nginx yapılandırmasını özelleştirmek için sudo nano /etc/nginx/sites-available/default dosyasını düzenleyin. Sunucu bloğuna location ~ \.php$ { fastcgi_pass unix:/var/run/php/php8.1-fpm.sock; ... } ekleyerek PHP desteğini etkinleştirin. Değişiklikleri test edin: sudo nginx -t, sonra yeniden yükleyin: sudo systemctl reload nginx. MariaDB için kullanıcı oluşturun: CREATE DATABASE app_db; CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'guclu_sifre'; GRANT ALL ON app_db.* TO 'app_user'@'localhost';. Bu ayarlar, trafiği optimize eder ve hataları minimize eder.
Test için sudo nano /var/www/html/info.php ile dosya oluşturun ve <?php phpinfo(); ?> ekleyin. Tarayıcıdan erişerek PHP bilgilerini görüntüleyin, ardından silin: sudo rm /var/www/html/info.php. Performans için sudo nginx -t ve logları izleyin: sudo tail -f /var/log/nginx/error.log. SSL için Let’s Encrypt entegrasyonu planlayın, ancak temel kurulumda HTTP ile başlayın. Bu adımlar, LEMP yığınını tamamen işlevsel hale getirir.
LEMP kurulumunu tamamladıktan sonra düzenli bakım yapın: Haftalık güncellemeler (sudo apt update && sudo apt upgrade), log rotasyonu ve yedeklemeler. Bu yapı, ölçeklenebilir web uygulamaları için kurumsal standartları karşılar ve yüksek erişilebilirlik sağlar. Uygulamanızı deploy ederek verimliliği gözlemleyin; gerekirse OPcache gibi optimizasyonlar ekleyin. Bu rehberle sorunsuz bir geçiş yapmış olacaksınız.