- Puanlar
- 38647
- Başarılar
- 8
- New
- #1
🚀 Ubuntu Üzerinde LAMP Stack (Apache, MySQL, PHP) Kurulumu Rehberi (2025)
Aşağıdaki adımları takip ederek, Ubuntu tabanlı sunucunuza LAMP (Linux, Apache, MySQL, PHP) ortamını hızlıca kurabilir ve web uygulamalarınızı çalıştırmaya başlayabilirsiniz. LAMP Stack; Linux işletim sistemi, Apache web sunucusu, MySQL veritabanı ve PHP dili birleşiminden oluşur. Dinamik web siteleri ve uygulamalar için ideal bir altyapıdır. Bu rehber Ubuntu 22.04 üzerindeki kurulum adımlarını kapsar, ancak Ubuntu 18.04 ve üstü sürümlerde de geçerlidir.🛠️ Adım 1: Sunucu Güncelleme Rehberi
LAMP Stack kurulumuna başlamadan önce, temiz bir Ubuntu işletim sistemi kurulu sunucuya sahip olmanız gerekmektedir. Ayrıca LAMP Stack kurulumu geri alınamaz bir işlem olduğu için yalnızca boş bir sunucuya kurulması tavsiye edilir. Kurulumdan önce sunucunuzun tüm güncellemelerini yaptığınızdan emin olun. Aşağıdaki komutları kullanarak sistem güncellemelerini tamamlayabilir, ardından LAMP Stack kurulumuna geçebilirsiniz.
Bash:
apt update -y && apt upgrade -y && apt autoremove -y && apt -y install wget && apt -y install nano && apt -y install curl
⚠️ Komutları çalıştırdıktan sonra, ekranda gelebilecek tüm yanıtlara Evet (yes) demeniz gerekir.
🛠️ Adım 2: Apache Web Sunucusunu Kurun ve Güvenlik Duvarını Ayarlayın
LAMP kurulumunun ilk adımı olan Apache, web sitenizin ziyaretçilere sunulmasını sağlayan açık kaynaklı bir web sunucusudur. Ubuntu repolarında bulunduğu için kurulumu oldukça kolaydır.Aşağıdaki komut ile Apache’yi yükleyebilirsiniz:
Bash:
sudo apt install apache2
⚠️ Komutları çalıştırdıktan sonra, ekranda gelebilecek tüm yanıtlara Evet (yes) demeniz gerekir.
🔐 Güvenlik Duvarı Ayarları
Ubuntu'da varsayılan olarak UFW güvenlik duvarı kullanılmaktadır. Apache’nin düzgün çalışabilmesi için HTTP (port 80) ve HTTPS (port 443) trafiğine izin vermemiz gerekir.Apache’yi UFW profili ile tanıtarak güvenlik duvarı üzerinden gerekli izinleri aşağıdaki komutlarla verebilirsiniz:
Bash:
sudo ufw allow 'Apache Full'
sudo ufw enable
🌍 Apache Kurulum Testi
Kurulum ve güvenlik duvarı işlemleri tamamlandıktan sonra, sunucunuzun ip adresini tarayıcınız üzerinden açarak Apache2 Default Page sayfasının aktif olup/olmadığını doğrulamanız gerekir.Tarayıcınızdan aşağıdaki şekilde, erişmeyi deneyiniz.
http://sunucu_ip_adresiniz🛠️ Adım 3: MySQL Veritabanı Sunucusunu Kurun
Web uygulamalarının büyük çoğunluğu, verileri saklamak ve yönetmek için bir veritabanına ihtiyaç duyar. LAMP kurulumunda bu iş için kullanılan veritabanı sistemi MySQL’dir. Ubuntu’da MySQL kurulumu oldukça kolaydır.Aşağıdaki komutu kullanarak MySQL’i sisteminize kurabilirsiniz:
Bash:
sudo apt install mysql-server
⚠️ Komutları çalıştırdıktan sonra, ekranda gelebilecek tüm yanıtlara Evet (yes) demeniz gerekir.
Kurulum tamamlandığında, MySQL otomatik olarak çalışmaya başlar. Durumunu kontrol etmek için aşağıdaki komutu kullanabilirsiniz:
Bash:
sudo systemctl status mysql
🔐 Güvenlik Yapılandırması
MySQL kurulumundan sonra, temel güvenlik yapılandırmalarını yapmanız önerilir. Bunun için MySQL’in sunduğu otomatik güvenlik betiğini çalıştırın:
Bash:
sudo mysql_secure_installation
⚠️ Bu betik, root şifresi belirleme, anonim kullanıcıları kaldırma, test veritabanını silme ve uzaktan root erişimini kapatma gibi işlemleri içerir. Adımları dikkatlice takip ederek önerilen güvenlik ayarlarını uygulayabilirsiniz.
✅ Kurulumun başarılı olduğunu doğrulamak için MySQL kabuğuna giriş yapabilirsiniz:
Bash:
sudo mysql
MySQL istemcisine başarıyla giriş yapabiliyorsanız, veritabanı sunucusu sorunsuz çalışıyor demektir. Çıkmak için:
Bash:
exit
🛠️ Adım 4: PHP Kurulumu ve Apache ile Entegrasyonu
Web sitelerinin dinamik hale gelmesini sağlayan en yaygın programlama dillerinden biri PHP’dir. PHP, HTML ile birlikte çalışarak veritabanı etkileşimi, form işlemleri ve daha birçok sunucu taraflı işlemi mümkün kılar. Bu adımda hem PHP’yi hem de Apache ile birlikte çalışmasını sağlayacak modülleri kuracağız.Aşağıdaki komut, PHP’yi ve en yaygın kullanılan bazı ek modülleri (örneğin MySQL bağlantısı için php-mysql) kurar:
Bash:
sudo apt install php libapache2-mod-php php-mysql
⚠️ Komutları çalıştırdıktan sonra, ekranda gelebilecek tüm yanıtlara Evet (yes) demeniz gerekir.
Bu komut sayesinde:
php: Ana PHP çalışma ortamı kurulur.libapache2-mod-php: Apache’nin PHP yorumlayabilmesi sağlanır.php-mysql: PHP’nin MySQL veritabanlarıyla çalışabilmesi sağlanır.
⚙️ PHP Dosyalarının Önceliğini Ayarlama (İsteğe Bağlı)
Apache, dizin içerisinde hangi dosyayı önce çalıştıracağınıdir.conf dosyasından belirler. PHP dosyalarını HTML’den önce çalıştırmasını istiyorsanız aşağıdaki komutla düzenleyebilirsiniz:
Bash:
sudo nano /etc/apache2/mods-enabled/dir.conf
Açılan dosyada şunu bulun:
Bash:
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
Ve
index.php’yi en başa alın:
Bash:
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
CTRL+X, sonra Y, sonra ENTER).Değişikliklerin geçerli olması için Apache servisini yeniden başlatın:
Bash:
sudo systemctl restart apache2
✅ PHP’nin doğru çalıştığını test etmek için Apache’nin web kök dizinine (/var/www/html) bir test dosyası oluşturun:
Bash:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
Tarayıcınızda
http://sunucu_ip_adresiniz/info.php adresine gidin. Eğer bir PHP bilgi sayfası görüyorsanız, PHP başarıyla kurulmuş ve Apache ile entegre edilmiştir.⚠️ Not: Güvenlik nedeniyle, test tamamlandıktan sonra bu dosyayı silmeniz önerilir:
Bash:
sudo rm /var/www/html/info.php
🛠️ Adım 5: Sanal Sunucu (Virtual Host) Oluşturun
Birden fazla web sitesini aynı sunucu üzerinde barındırmak istiyorsanız, Apache Virtual Host (sanal sunucu) yapılandırması yapmanız gerekir. Bu adımda, örnek bir alan adı (örneğinlamp.hatalar.com) üzerinden sanal host tanımı yapacağız.🧱 1. Dizin Yapısını Oluşturun
Yönetimi basit olması için her bir alan adı için ayrı bir kök dizin yapısı oluşturmanızı öneririz:
Bash:
sudo mkdir -p /var/www/lamp.hatalar.com/public_html
Ardından bu dizinin sahipliğini ve izinlerini ayarlayın:
Bash:
sudo chown -R $USER:$USER /var/www/lamp.hatalar.com/public_html
🧾 2. Apache İçin Virtual Host Dosyasını Oluşturun
Apache’nin virtual host tanım klasörüne girin ve yeni bir yapılandırma dosyası oluşturun:
Bash:
sudo nano /etc/apache2/sites-available/lamp.hatalar.com.conf
İçeriğine şunu yazın:
Bash:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName lamp.hatalar.com
ServerAlias www.lamp.hatalar.com
DocumentRoot /var/www/lamp.hatalar.com/public_html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
✅ 3. Yapılandırmayı Aktif Edin
Apache’ye bu yapılandırmayı tanıması için aşağıdaki komutları girin:
Kod:
sudo a2ensite lamp.hatalar.com.conf
sudo systemctl reload apache2
✅ 4. Varsayılan Siteyi Devre Dışı Bırakma
http://sunucu_ip_adresiniz/ üzerinden erişim sağlamayı kapatmanızı öneririz, bunun için aşağıdaki komutları çalıştırın:
Bash:
sudo a2dissite 000-default.conf
sudo systemctl reload apache2
✅ 5. Oluşturulan web sitesine index.html yükleyelim.
Sitemizin çalışıp çalışmadığını anlamak için, index.html dosyası oluşturup kontrol sağlamamız gerekir.Site dosyalarımızı yöneteceğimiz dizine giriş yapalım:
Bash:
cd /var/www/lamp.hatalar.com/public_html
Daha sonrasında index.html oluşturup, içerisine web sitesi çalışıyor yazabiliriz:
Bash:
nano index.html
CTRL+X, sonra Y, sonra ENTER).⚠️ Artık temel olarak LAMP kurulumumuz tamamlandı. Diğer rehber içeriklerimizde, daha da detaylandırılacaktır.















