LAMP Server Kurulumu: Ubuntu 16.04 Linux + Apache + MySQL + PHP

LAMP Server Kurulumu: Ubuntu 16.04 Linux + Apache + MySQL + PHP

Bu rehber yazımızda LAMP’nin Ubuntu 16.04 VPS’ye nasıl kurulacağını öğreneceğiz ancak ilk önce ufak bir açıklama yapalım.

LAMP Nedir?

LAMP, Linux, Apache, MySQL, PHP’nin kısaltmasıdır. Dinamik web uygulamaları oluşturmak ve dağıtmak için popüler bir yığındır.

Bu yığında Linux, web uygulaması için işletim sistemi olarak hizmet eder. Veritabanı olarak MySQL kullanılmaktadır. Web sunucusu olarak Apache kullanılmaktadır. PHP, dinamik içeriği işlemek için kullanılır. Bu yığının diğer bazı türevlerinde PHP veya Python yerine Perl tercih edilir. Ancak bu rehber yazısında en popüler yığın olan PHP’yi kuracağız.

LAMP Server Kurulumu için Nelere ihtiyacınız olacak?

LAMP server rehberine başlamadan önce aşağıdakilere ihtiyacınız vardır:

Güvenlik nedenleri için root kullanıcısı yerine sudo kullanıcısının kullanımı önerilir. Eğer VPS servisinize root erişiminiz varsa, aşağıdaki komutla sudo kullanıcısı oluşturabilirsiniz.

adduser <kullaniciadi>

Yukarıdaki komut belirttiğiniz kullanıcı adı ile kullanıcı oluşturur. Şimdi yeni oluşturduğunuz kullanıcıya sudo yetkisi verin.

usermod -aG sudo <kullaniciadi>

Yeni kullanıcıya geçin.

sudo su - <kullaniciadi>

LAMP Server nasıl çalışır?

Her web sayfası isteği sunucuya ulaştığında istek bizim durumumuzda Apache olan ve web sunucusu adı verilen bir uygulamaya gönderilir. Apache isteğin URL’sinde istenilen dosyayı arar ve bu bilgiyi PHP’ye gönderir. PHP bu dosyada yazılı olan mantığı çalıştırır, eğer gerekliyse MySQL veritabanından veriyi çeker ve sonunda bir web sayfası oluşturur. Web sunucumuz olan Apache bu oluşturulan web sayfasını istemciye gönderir. Tüm bu işlem LAMP sunucusundan her web sayfası istediğinde ufak değişiklikler ile çalıştırılır.

Adım 1 – Apache Web Server Kurulumu

Kuruluma başlamadan önce sisteminizi güncelleyin ve en yeki paketlere sahip olduğunuzdan emin olun.

sudo apt-get update
sudo apt-get upgrade

Şimdi aşağıdaki komutla Apache2’yi kurun.

sudo apt-get install apache2

Kurulumunuzu kontrol etmek

Kurulumunuzu kontrol etmek için bilgisayarınızda tarayıcınızı açın ve adres çubuğuna http://<sizin_vps_ip_adresiniz> yazıp girin. Örneğin, eğer VPS IP adresiniz 195.110.59.211 ise, girmeniz gereken adres http://195.110.59.211 olmalıdır.

Girdiğinizde görmeniz gereken sayfa şu şekildedir:

Apache2 Default SayfasıNot: Eğer VPS’inizin IP adresini bilmiyorsanız, adresi bulmanın en kolay yolu aşağıdaki komutu çalıştırmaktır. Bu komut VPS servisinizin public IP adresini ekrana yazdıracaktır.

dig +short myip.opendns.com @resolver1.opendns.com

Kurulumunuzda hata giderme

Eğer yukarıdaki ekran görüntüsündeki gibi bir sayfa görmediyseniz, koruma duvarını aktifleştirmiş olabilirsiniz. Koruma duvarınızda Apache’nin web isteklerini 80 ve 443 portlarında yanıtlamasına izin vermelisiniz. UFW kurun.

sudo apt-get install ufw

Ardından koruma duvarında HTTP ve HTTPS trafiğine izin verin.

sudo ufw allow http
sudo ufw allow https

Bu komut koruma duvarında HTTP ve HTTPS içeriğine izin verir. UFW, Uncomplicated Firewall adı verilen komut satırı uygulamasıdır. Linux koruma duvarını yönetmek ve koruma duvarı için kurallar oluşturmada kullanılır.

Şimdi kurulumu kontrol etmek için tekrar tarayıcınızda VPS IP adresinizi ziyaret edin. Apache sunucunuzun durumunu aşağıdaki komutla kontrol edebilirsiniz.

sudo systemctl status apache2

Adım 2 – MySQL Kurulumu

MySQL uygulamanız için veritabanıdır. MySQL kurulumu için aşağıdaki komutu çalıştırın.

sudo apt-get install mysql-server

Kurulum sırasında sizden root kullanıcısı için şifre sorulacak. Güçlü bir şifre kullandığınızdan emin olun. Boş bırakmayın.

LAMP Sunucu Ubuntu MySQL Kurulumu

MySQL’de root kullanıcısı en yüksek yetkiye sahip kullanıcıdır. Root kullanıcısını kullanarak veritabanları için diğer kullanıcıları oluşturabilirsiniz. Her yeni web uygulaması için ayrı kullanıcı/rol oluşturmak iyi bir alıştırmadır. Aşağıdaki komut ile MySQL servisinin durumunu kontrol edebilirsiniz.

sudo systemctl status mysql

Örnek çıktı:

● mysql.service - MySQL Community Server
 Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
 Active: active (running) since Tue 2017-07-11 09:39:40 EDT; 1min 39s ago
 Main PID: 9579 (mysqld)
 CGroup: /system.slice/mysql.service
 └─9579 /usr/sbin/mysqld
 
Jul 11 09:39:39 abandoned-plate systemd[1]: Starting MySQL Community Server...
Jul 11 09:39:40 abandoned-plate systemd[1]: Started MySQL Community Server.

Adım 3 – PHP Kurulumu

PHP uygulamanızı çalıştırır. PHP’yi ve ek modüllerini aşağıdaki komutu çalıştırarak kurun.

sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql php-cgi php-curl php-json

Bu komut PHP’nin en yeni stabil sürümünü ve web uygulamasının çalışması için gerekli bazı ek modüllerini kuracaktır.

PHP Kurulumunuzu kontrol etmek

PHP’yi kurduğunuza göre şimdi düzgün çalışıp çalışmadığını kontrol edebilirsiniz. Öncelikle nano metin editörünü kuralım.

sudo apt-get install nano

Nano komut satırı üzerinden metin düzenleyicisidir ve yeni başlayanlar için bile kullanıcı dostudur. nano metin düzenleyicisini nasıl kullanacağınızı öğrenmek için buraya tıklayın. Şimdi aşağıdaki komutu girin:

 sudo nano /var/www/html/test.php

Bu komut düzenlemek için boş bir test.php dosyasını nano düzenleyicisinde ile açacaktır. Test php dosyamızı oluşturduğumuz /var/www/html dizini webroot olarak da bilinir. Aksi yapılandırılmadıkça, burası web sitesi URL’sinde istenilen dosyayı Apache’nin aradığı yerdir. Bu yapılandırma hakkında daha fazla bilgi için Apache Ubuntu dökümantasyon sayfasını inceleyin. Aynı zamanda bu dizine yazabilmek için root yetkilerine de sahip olmanız gerekir. Biz komuttan önce sudo kullandık. Şimdi açılan editörde aşağıdaki kodu yazın.

<?php
phpinfo();
?>

Kodu yazdıktan sonra Ctrl + X (MacOS için CMD + X) tuşlarına basın ve ardından onaylamak için Y yazıp ENTER‘a basın. Bu dosyayı kaydedecek ve dosyadan çıkacaktır. Şimdi http://<sizin_vps_ip_adresiniz>/test.php web adresini tarayıcınızda açın.

Tekrar şunun gibi bir sayfa görüyor olmalısınız:

LAMP Server Ubuntu Kurulum Testi

test.php dosyamızda çağırdığımız phpinfo() fonksiyonu PHP kurulumu ve yapılandırması hakkında bilgi gösterir. Şimdi aşağıdaki komutu girerek bu test dosyasını kaldırın.

sudo rm /var/www/html/test.php

Not: Saldıranlara sunucunuz ve sunucunuzun yapılandırması hakkında kritik bilgi sağlayacağı için bu test dosyasını kontrol ettikten sonra kaldırmak son derece önemlidir.

Sonuç

Ubuntu üzerinde LAMP server kurulumunu öğrendiniz. Kurulumdan sonra PHP dosyalarınızı sunucuya yükleyebilir ve web uygulamanızı çalıştırabilirsiniz. Web arayüzü ile veritabanlarınızı yönetmek için phpMyAdmin de kurabilirsiniz. Diğer VPS Rehberlerimize göz attığınızdan emin olun ve eğer herhangi bir sorunuz, probleminiz, yorumunuz veya fikriniz varsa yorumlarda bize bildirin. Mutlu kodlamalar!

Author
Yazar

Egehan D.

Egehan Hostinger'da ML ve NN ile denetimsiz öğrenme üzerinde çalışıyor. Veri analizi hakkında büyük bir tutkuya sahiptir. İşi her ne kadar hobi gibi olsa da, çeşitli aktivitelerde gönüllü olmaktan ve ormanda kamp yapmaktan da büyük oranda zevk alıyor.