30 Kasım 2015 Pazartesi

Fedora 23 Workstation and Server Üzerinde Nasıl LAMP (Linux, Apache, MariaDB and PHP) Kurulur?


Eğer kendi web sitenizi host etmeyi ya da PHP kodlama becerinizi test etmeyi istiyorsanız, sisteminizde LAMP sahibi olmanız şart diye belirtmiş Tecmint sitesindeki öğreticiyi hazırlayan editör. Ben de İngilizcesi pek de iyi olmayanlara bu konuda yardımcı olabileceğimi düşündüm.
Öncelikle LAMP teriminin, Linux-Apache-MySQL-PHP bileşenlerinin kısaltması olduğunu belirtelim.

Fedora 23 Server ve Workstation üzerinde LAMP kurulumuna başlamadan önce sisteminizi güncellemenizi öneririm. Bunu uçbirime tırnak işareti ("") olmadan "sudo dnf update" komutunu girerek yapabiliyoruz.

1. Apache Web Sunucusu Kurulumu:

Sistemimizi güncelledik şimdi sıra Apache sunucumuz kurulumunu yapmakta. Apache web sunucusunun internet üzerinde en çok kullanılan sunucu olduğunu da belirtelim yeri gelmişken. Apache web sunucunuzun fonksiyonlarını özelleştirmek ve güveniliğini arttırmak için pek çok modül bulunuyor. Web sitelerinizi korumak üzerine de bir yazı hazırlamam gerektiğini buraya not düşeyim.

Fedora 23 üzerinde Apache kurmanız için uçbirimde aşağıdaki basit komutu girmeniz yeterli:

sudo dnf install httpd



Web sunucunuzu kurduktan sonra ilk yapmanız gereken bilgisayarı her başlattığınızda otomatik olarak bir hizmet şeklinde arkaplanda çalıştırılması için:aşağıdaki komutu giriyoruz:

sudo systemctl enable httpd.service

Bilgisiyarı yeniden başlattığımızda Web sunucumuz çalışacak artık ancak sistemi yeniden başlatmayı beklememize gerek yok. Apache web sunucusumu aşağıdaki basit komutu uçbirime girerek çalıştırabilirsiniz:

sudo systemctl start httpd

Artık Apache web suunucumuz sistem arkaplanında çalışıyor ancak bundan emin olmak istiyor isek uçbirime aşağıdaki komutu giriyoruz.

sudo systemctl status httpd
Uçbirime dökülen ekran çıktısının tahminen üçüncü veya dördüncü satırında yeşil renkte bir active (running) yazısı görmeniz gerekiyor takip eden kısmında da Apache sunucunuzun ne zamandan beri aktif olduğu belirtilir.

Buraya kadar sorunsuzca geldiğimize göre aktif bir Apache web sunucumuz var demektir. Fedora üzerinde firewall (güvenlik duvarı) için sunucuya http ve https üizerinden erişim için izin vermemiz gerekiyor. Bunu yapmak için de terminal üzerinde aşağıdaki basit iki komutu çalıştıracağız:

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https

Her iki komut sonrasında da uçbirim ekranımızda "success" çıktısını görmemiz gerekiyor. Eğer bu ekran çıktıları göründü ise izinleri sorunsuzca verebildik demektir.

Şimdi web sunucumuzu test etme zamanı. Testi ip üzerinden yapmak istiyorsak ve sistemimizin lokal ip adresini sabit bir ip ile belirlemediysek lokal ağımızdaki ip adresimini öğrenmek için uçbirimde aşağıdaki komutu çalıştırmalıyız:

ip a | grep inet

Ekran çıktısının sondan bir önceki satırında ip adresiniz/24 brd şeklinde bir çıktı olacaktır.

Kullandığınız Web Browser uygulamasını açın ve adres çubuğuna ip adresinizi

http://ip-adresiniz şeklinde yani örnek olarak http://192.168.99.99 gibi.

Eğer aşağıdaki resimdekine benzer bir sayfaya ulaştıysanız sorun yok demektir.


Apache web sunucusunun Fedora üzerinde varsayılan olarak dizini:

/var/www/html/

2. MariaDB Database Sunucusu Kurulumu:


MariaDB Oracle'ın öldürmeyi başardığı MySQL projesinin bir çatallamasıdır. GPU lisansı ile dağıtılmaktadır.

Aşağıdaki basit komutu terminal üzerinde çalıştırarak kolaylıkla MariaDB database sunucumuzu kurabiliriz  :

Önce bir "root" olalım:

su -

 dnf install mariadb-server

systemctl enable mariadb

systemctl start mariadb

systemctl status mariadb


Yukarıdaki son üç komut dizesini Apache kurulumu kısmından da hatırlayacaksınız. Sistem servisini etkinleştirdik, başlattık ve çalışıp çalışmadığını kontrol ettik. status içeren terminal komut dizisinin çıktısında da active (running) ibaresini görmeliyiz.

Şimdi databese sunucumuzun temel ayarlarını yapılandırma zamanı. Bunun için de terminalde şu komutu çalıştıralım (root yetkileri ile):

mysql_secure_installation



Şimdi yapılandırma sihirbazı bizden sıra ile bazı tercihleri belirtmemizi isteyecek:


  • İlk Soru "Enter current password for root (enter for none)" : Henüz yapılandırmadığımız için database sunucumuzun bir root şifresi olmadığından ENTER tuşuna basarak bir sonraki adıma geçeceğiz.
  • Set root password? [Y/n] : Y tuşuna basacağız çünkü güvenli bir sunucu sahibi olmak için bir root şifremiz olmalı: Y tuşunun peşi sıra ENTER tuşuna bastıktan sonra kullanmak istediğimiz şifreyi girip ENTER tuşuna basacağız. Şifrenin doğruluğunu teyit etmek için aynı şifreyi tekrar girip tekrar ENTER tuşuna basacağız.
  • Remove anonymus user [Y/n] Y tuşuna basarak anonim kullanıcıları silebiliriz.
  • Disallow root login remotly? [Y/n] Eğer aksi bir biçimde çalışma planımız yoksa güvenlik için Y tuşuna basarak sunucuya uzaktan root erişimini devredışı bırakabiliriz.
  • Remove test database and access to it? [Y/n] Y tuşuna basarak test databasesini ve erişimini silebiliriz.
  • Reload privilege tables now? [Y/n]  Y tuşuna basarak ayrıcalıklar (izinler) tablosunu yeniden yükleyebiliriz.

3. Php Kurulumu


Php internet üzerindeki pek çok web sitesinin kullandığı bir programlama dilidir. Fedora 23 üzerinde php kurmak için ihtiyaç duyacağınız komut:

dnf install php php-common

 Şimdi de PHP/MySQL programlarının kullandığı modülleri yükleyelim:

dnf install php-mysql php-pdo php-gd php-mbstring

//Bu kısım opsiyoneldir
ve son olarak database sunucumuzu yönetmemizi bir hayli kolaylaştıracak olan phpMyadmin arayüzünü kuralım:

dnf -y install phpMyAdmin php-mysqlnd php-mcrypt 

PhpMyAdmin yapılandırması için nano ya da vi ya da gedit gibi bir araçla yapılandırma dosyasını düzenlemeliyiz. (Ben nano kullanıyorum o yüzden komut örneğini nano ile vereceğim):

nano /etc/httpd/conf.d/phpMyAdmin.conf 

Dosyanın içerisinde ilk önce 17. sıradaki satıra gelip yanına lokal ağ üzerinde bilgisayarımıza atadığımız ip adresini girmeliyiz. Örnek vermek gerekirse:

Require ip 127.0.0.1 192.168.1.99.99/24

Dosyanın içerisinde ilk önce 34. sıradaki satıra gelip yanına lokal ağ üzerinde bilgisayarımıza atadığımız ip adresini girmeliyiz. Örnek vermek gerekirse:

Require ip 127.0.0.1 192.168.1.99.99/24

//Opsiyonel olan kısım bitti

ve şimdi apache sunucumuzu değişiklikleri algılaması için yeniden başlatabiliriz:

systemctl restart httpd

Sonuç olarak çalışan bir apache web sunucumuz ve MariaDB Databese sunucumuz ve bunlar üzerinde programlama yapabileceğimiz php dili ve modüllerimiz var.

Sıra geldi test aşamasına. Apache sunucumuzu host adımız veya lokal ip adresimizi kullandığımız browser programının adres çubuğuna girerek test edebileceğimizi zaten gördük.

Php ile programladığımız sayfaların çalışıp çalışmayacağını görmek için öncellkle basit bir php sayfası oluşturalım:

echo "<?php phpinfo(); ?>" > /var/www/html/info.php

Browser programımızı açıp ip adresimizi ya da host adımızı girip /info.php ekleyerek yazdığımızda aşağıdaki örneteki gibi bir görüntü gelmeli:




Bu demek oluyor ki oluşturduğumuz php sayfalarını kendi web sunucumuz üzerinde çalıştırabiliriz.

PhpMyAdmin testi için de yine ip adresimizi ya da host adımızı girip /phpmyadmin yazmamız yeterli. Açılan sayfada database sunucumuzun root şifresinin sorulduğu ve dil seçimi yaptığımız bir sayfa gelmeli.

Sevgili dostlar umarım faydalı bir yazı olmuştur esen kalın.




2 yorum:

  1. Fedora için türkçe kaynak açısından harika bir makale olmuş, kaleminize sağlık :)

    YanıtlaSil