CentOS 6 Linux sunucusuna Apache, MySQL, PHP (LAMP) nasıl kurulur

15 Ekim 2015, Perşembe 0 Yorumlar

LAMP Hakkında

LAMP, web sunucuları çalıştırmak için kullanılan açık kaynaklı yazılımlar grubudur. Kısaltması Linux, Apache, MySQL ve PHP den gelmektedir. Sunucu CentOS olduğu için Linux kısmını tamamladık diyebiliriz.


Kurulum

Bu tutorial'daki komutları kullanabilmeniz için root yetkilerine sahip olabilmeniz gerekiyor. Başlamadan önce sudo komutlarını kullanabildiğinizden emin olun.


1. Apache kurulumu

Apache açık kaynaklı ve dünyadaki web sunucularının %50 sinden fazlasının tercih ettiği bir yazılımdır.

Apache'yi kurmak için şu komutu terminalinize yazın:

sudo yum install httpd

Kurulum bittikten sonra apache'yi başlatabilirsiniz.

sudo service httpd start

Hepsi bu kadar. Apache'nin yüklendiğini kontrol etmek için tarayıcınıza sunucunun IP adresini yazın (ör: http://12.34.56.789). Sayfanın ekrana "It works!" yazısını getirmesi gerekiyor.

Sunucunuzun IP adresini "Sunucular" sayfasından ilgili sunucu satırından alabilirsiniz:



Eğer bu sayfayı görüyorsanız, web sunucu kurulumunuz doğru yapılmış demektir.




Connection refused ve iptables izinleri

CentOS işletim sisteminde ön tanımlı olarak bazı portlar dışarıya kapalı gelmektedir. Örnek olarak http (80) portuna ulaşmak için iptables güvenlik ayarlarının yeniden yapılması gerekebilir. Eğer sunucunuzun web sayfasına dışardan bağlanmakta güçlük çekiyorsanız aşağıdaki şekilde 80. porta (https için 443) izin vermelisiniz. Başka portlarla da sorun yaşarsanız, bu şekilde izin verebilirsiniz:

sudo iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT 4 -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
sudo service iptables save

veya iptables servisini tamamen devre dışı da bırakabilirsiniz (önerilmez).

service iptables stop


2. MySQL kurulumu

MySQL çok gelişmiş bir databsase yönetim sistemidir.

MySQL yüklemek için terminali açın ve şu komutları çalıştırın:

sudo yum install mysql-server
sudo service mysqld start

Kurulum sırasında MySQL size iki kere yetki soracaktır. İkisine de Yes dedikten sonra, MySQL kurulacaktır.

Kurulum tamamlandıktan sonra MySQL root şifresi belirleyebilirsiniz:

sudo /usr/bin/mysql_secure_installation

Konsol size mevcut root şifresini soracaktır.

MySQL'i daha yeni yüklediğiniz için bir root şifreniz olmayacağı için bunu boş bırakarak enter tuşuna basın.

OK, successfully used password, moving on...

Daha sonra konsol size bir root şifresi belirlemek isteyip istemediğiniz soracak. Y'yi seçin ve talimatları takip edin.

CentOS MySQL kurulumuyla ilgili size çeşitli evet hayır soruları yöneltecek.

Tüm sorulara kısaca Yes diyebilirsiniz. En sonunda MySQL yeniden yüklenecek ve değişiklikleri uygulayacak.

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] y                                            
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!


3. PHP kurulumu

PHP açık kaynak kodlu bir web yazılım dilidir ve genellikle dinamik web sayfalarının yapımında kullanılır.

PHP yüklemesine başlamak için konsolunuza şu komutu yazın:

sudo yum install php-mysql php-devel php-gd

PHP konsolunun sorusuna yes dediğiniz zaman yükleme işlemi başlayacaktır.

PHP Modülleri

PHP aynı zamanda pek çok farklı kütüphane ve modül ile birlikte gelmektedir. Uygun kütüphaneleri görmek için şunu yazın:

yum search php-

Konsol size yükleyebileceğiniz modülleri listeleyecektir. Yaklaşık olarak şu şekilde görülecek:

php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
php-cli.x86_64 : Command-line interface for PHP
php-common.x86_64 : Common files for PHP
php-dba.x86_64 : A database abstraction layer module for PHP applications
php-devel.x86_64 : Files needed for building PHP extensions
php-embedded.x86_64 : PHP library for embedding in applications
php-enchant.x86_64 : Human Language and Character Encoding Support
php-gd.x86_64 : A module for PHP applications for using the gd graphics library
php-imap.x86_64 : A module for PHP applications that use IMAP

Daha fazla ayrıntı için modülün ismini değiştirin ve istediğiniz diğer kütüphaneleri yazıp aratın.

yum info name of the module

Yüklemeye karar verdiğinizde şunu yazın:

sudo yum install name of the module

Birden fazla modülü tek satırda yükleyebilirsiniz. Bunun için isimlerinin arasına boşluk koyun.

Tebrikler! Artık sunucunuzda LAMP kullanıma hazır!

Aynı zamanda bunların sunucu başlangıcında otomatik çalışmasını ayarlamalıyız (php apache başlayınca otomatik olarak çalışır).

sudo chkconfig httpd on
sudo chkconfig mysqld on


4. Sunucunuzda PHP'yi görün

LAMP'in sunucunuza yüklenmesiyle birlikte, eklentileri online olarak basit bir php info sayfaında görebilirsiniz.

bunu yapabilmek için yeni bir dosya oluşturun:

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

Ve şu satırları ekleyin:

<?php
phpinfo();
?>

Ve kaydedip kapatın.

Apache'yi yeniden başlatın böylece tüm değişiklikler etkili olacaktır:

sudo service httpd restart

İşiniz bittiğinde şu sayfayı ziyaret edin (IP adresinin sizin IP adresiniz olduğundan emin olun, verilen adres örnektir.): http://12.34.56.789/info.php


Bunu paylaş


Yorumlar