Centos 6 Apache 2.4, Php 7, Mysql 5.7 ve phpMyAdmin Kurulumu
Giriş
Web Sitenizi kendi sunucunuzda yayınlamak için Apache, Php, Mysql ve phpMyAdmin kurmamız gerekiyor. Şimdi size bu kurulumları nasıl yapacağınızı anlatacağım ve konu hakkında sorularınızı cevaplayacağım.
Gereksinimler
- Ssh root erişimi
1. Adım - Kurulması Gereken Paketler
yum update -y
yum -y groupinstall "Additional Development"
yum -y groupinstall "Development Tools"
yum -y install curl-devel glibc-utils libuuid-devel pcre-devel openldap-devel lua-devel freetds-devel unixODBC-devel expat-devel dygenox libjpeg-turbo-devel libXpm-devel gmp-devel libicu-devel libmcpp-devel aspell-devel libtidy-devel
Mhash & Mhash-devel Kurulumu
rpm -Uvh http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el6/en/x86_64/rpmforge/RPMS/mhash-0.9.9-1.el6.rf.x86_64.rpm
rpm -Uvh http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el6/en/x86_64/rpmforge/RPMS/mhash-devel-0.9.9-1.el6.rf.x86_64.rpm
Libmcrypt & Libmcrypt-devel Kurulumu
rpm -Uvh https://rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/libmcrypt-2.5.7-1.2.el6.rf.x86_64.rpm
rpm -Uvh http://ftp.tu-chemnitz.de/pub/linux/dag/redhat/el6/en/x86_64/rpmforge/RPMS/libmcrypt-devel-2.5.7-1.2.el6.rf.x86_64.rpm
Freetype & Freetype-devel Kurulumu
rpm -Uvh http://mirror.centos.org/centos/6/os/x86_64/Packages/freetype-2.3.11-17.el6.x86_64.rpm
rpm -Uvh http://mirror.centos.org/centos/6/os/x86_64/Packages/freetype-devel-2.3.11-17.el6.x86_64.rpm
2. Adım - Apache 2.4 Kurulumu
Var ise eski dosyaları silerek başlıyoruz kuruluma
cd /usr/src
rm -rf httpd-* apr-*
Setup klasörü oluşturuyoruz ve klasör içerisine giriyoruz
mkdir /home/setup
cd /home/setup
Gerekli olan dosyaları indiriyoruz (Yeni sürümlerden sonra linkler çalışmayacaktır, linkleri kontrol ediniz)
wget -q http://ftp.itu.edu.tr/Mirror/Apache/httpd/httpd-2.4.35.tar.gz
wget -q http://ftp.itu.edu.tr/Mirror/Apache/apr/apr-1.6.5.tar.gz
wget -q http://ftp.itu.edu.tr/Mirror/Apache/apr/apr-util-1.6.1.tar.gz
İndirdiğimiz sıkıştırılmış klasörleri dışarı çıkartıyoruz.
tar xf httpd-2.4.35.tar.gz
tar xf apr-1.6.5.tar.gz
tar xf apr-util-1.6.1.tar.gz
Apr ve Apr-Util Klasörlerini isimlerini değiştirerek gerekli klasöre taşıyoruz
mv apr-1.6.5 /home/setup/httpd-2.4.35/srclib/apr
mv apr-util-1.6.1 /home/setup/httpd-2.4.35/srclib/apr-util
Apr Derleme İşlemleri
cd /home/setup/httpd*/srclib/apr
Klasöre girdikten sonra configure dosyasında ufak bir değişiklik yapıyoruz. nano ile dosyayı açıyoruz
nano configure
dosya içerisinde ctrl+w ile aşağıdaki satırı buluyoruz
$RM "$cfgfile"
ve
$RM -f $cfgfile"
olarak değiştiriyoruz. Daha sonra sırasıyla komutları uyguluyoruz ve Apr yi derliyoruz
./configure --prefix=/usr/src/apr/
make
make install
Daha sonra Apr-Util klasörüne geçiyoruz ve aynı şekilde onuda derliyoruz
cd ../apr-util
./configure --prefix=/usr/src/apr-util/ --with-apr=/usr/src/apr/
make
make install
Apache Derleme (İşlem sunucunuzun özelliklerine göre uzun sürebilir)
cd /home/setup/httpd*
./configure --prefix=/usr/local/apache2/ --with-apr=/usr/src/apr/ --with-apr-util=/usr/src/apr-util --enable-so --with-mpm=prefork --with-crypto --with-included-apr --with-ldap --enable-mods-shared=all --with-included-apr
make clean
make
make install
httpd.conf üzerinde gerekli düzenlemeleri yapıyoruz
sed -i 's/#ServerName www.example.com:80/ServerName 127.0.0.1/g' /usr/local/apache2/conf/httpd.conf
sed -i 's/#LoadModule rewrite_module modules\/mod_rewrite.so/LoadModule rewrite_module modules\/mod_rewrite.so/g' /usr/local/apache2/conf/httpd.conf
sed -i 's/AllowOverride None/AllowOverride All/g' /usr/local/apache2/conf/httpd.conf
sed -i 's/AllowOverride none/AllowOverride All/g' /usr/local/apache2/conf/httpd.conf
Başlangıçta apachenin başlaması için aşağıda ki komutu uyguluyoruz
echo '/usr/local/apache2/bin/apachectl start' >> /etc/rc.local
Iptables üzerinde http ve https protokollerinin giriş izinlerini ayarlıyoruz.
iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
iptables -I INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
service iptables save
service iptables restart
Tüm bu işlemlerden sonra Apacheyi Başlatıyoruz
/usr/local/apache2/bin/apachectl start
İnternet tarayıcınızdan Ip adresinizi yazıp tuşladığınızda Ekranda It Works! yazıyorsa işlem tamamdır. Php kurulumuna geçebiliriz.
3. Adım - Php 7 Kurulumu
Setup klasörümüze geri dönüyoruz
cd /home/setup
Php 7 için gerekli dosyaları indiriyoruz
wget -q http://tr1.php.net/distributions/php-7.2.11.tar.gz
Sıkıştırılmış olan klasörü dizine çıkartıyoruz ve içine giriyoruz
tar xf php*
cd php*
Aşağıda ki komutları uygulayarak Php yi yapılandırıyoruz ve kuruyoruz (İşlem sunucunuzun özelliklerine göre uzun sürebilir)
./configure --with-libdir=lib64 --prefix=/usr/local/lib --with-layout=PHP --with-pear --with-apxs2=/usr/local/apache2/bin/apxs --enable-calendar --enable-bcmath --with-gmp --enable-exif --with-mcrypt --with-mhash --with-zlib --with-bz2 --enable-zip --enable-ftp --enable-mbstring --with-iconv --enable-intl --with-icu-dir=/usr --with-gettext --with-pspell --enable-sockets --with-openssl --with-curl --with-gd --enable-gd-native-ttf --with-jpeg-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-xpm-dir=/usr --with-freetype-dir=/usr --with-libxml-dir=/usr --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-soap --with-xmlrpc --with-xsl --with-tidy=/usr --with-readline --enable-pcntl --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-shmop --enable-maintainer-zts
make
make install
Php.ini Dosyasını /usr/local/lib dizinine kopyalıyoruz
cp php.ini-production /usr/local/lib/php.ini
Aşağıda ki komutlar ile httpd.conf içerisinde ekleme ve düzenleme işlemi yapıyoruz
echo -e "<FilesMatch \.php$>\nSetHandler application/x-httpd-php\n</FilesMatch>" >> /usr/local/apache2/conf/httpd.conf
sed -i 's/DirectoryIndex index.html/DirectoryIndex index.html index.php/g' /usr/local/apache2/conf/httpd.conf
4. Adım - Mysql 5.7 Kurulumu
Setup Klasörümüze geri dönüyoruz
cd /home/setup
Mysql 5.7 İndiriyoruz ve kuruyoruz
wget -q http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm
md5sum mysql57-community-release-el6-7.noarch.rpm
rpm -ivh mysql57-community-release-el6-7.noarch.rpm
yum install -y mysql-community-server
Mysql Serverı Başlatıyoruz.
service mysqld start
Mysql Serverını Centos başlangıcına ekliyoruz
echo 'service mysqld start' >> /etc/rc.local
Aşağıda ki komut ile Mysql kurulumunda default koyduğu şifreyi öğreniyoruz
grep 'temporary password' /var/log/mysqld.log
Bize şöyle bir çıktı verecek
xxxxx [Note] A temporary password is generated for root@localhost: Şifre
Şifremizi değişitirmek için aşağıda ki komutu uyguluyoruz ve bize default verdiği şifreyi giriyoruz
mysql_secure_installation
Daha sonra bizden yeni şifre girmemizi isteyecek aşağıda ki gibi bir çıktı olacak. Güçlü bir şifre yazmamız gerekiyor büyük küçük harf, sayı ve karakter olsun
The existing password for the user account root has expired. Please set a new password.
New password:
Yeni şifre belirledikten sonra aşağıda ki gibi bir çıktı verecek ve karşımıza çıkan alanlara y yazarak enterlıyoruz.
Estimated strength of the password: 100
Change the password for root ? (Press y|Y for Yes, any other key for No) :
İşlemler başarılı ile tamamlandığında vereceği çıktı aşağıda ki gibi olacak.
Success.
All done!
5. Adım - phpMyAdmin Kurulumu
Setup Klasörümüze geri dönüyoruz
cd /home/setup
phpMyAdmin ‘in dosyalarını indiriyoruz ve klasörü dizine çıkartıyoruz
wget -q https://files.phpmyadmin.net/phpMyAdmin/4.8.3/phpMyAdmin-4.8.3-english.tar.gz
tar xf phpMyAdmin*.tar.gz
phpMyAdmin ‘i ismini değiştirerek Apache ‘nin kurulu olduğu /usr/local/apache2/htdocs/ dizinine taşıyoruz
mv phpMyAdmin-4.8.3-english /usr/local/apache2/htdocs/phpMyAdmin
phpMyAdmin içerisinde ki config.sample.inc.php ismini config.inc.php olarak değiştiriyoruz
mv /usr/local/apache2/htdocs/phpMyAdmin/config.sample.inc.php /usr/local/apache2/htdocs/phpMyAdmin/config.inc.php
Config içerisinde ki $cfg[‘Servers’][$i][‘host’] = ‘localhost’; satırını $cfg[‘Servers’][$i][‘host’] = ‘127.0.0.1’; olarak değiştiriyoruz
sed -i 's/localhost/127.0.0.1/g' /usr/local/apache2/htdocs/phpMyAdmin/config.inc.php
phpMyAdmin Klasörü içerisine tmp adında bir klasör oluşturuyoruz ve dosya izinlerini 777 olarak ayarlıyoruz
mkdir /usr/local/apache2/htdocs/phpMyAdmin/tmp
chmod 777 /usr/local/apache2/htdocs/phpMyAdmin/tmp
Artık phpMyAdmin e aşağıda ki link ile giriş yapabilirsiniz
http://IpAdresiniz/phpMyAdmin
Kullanıcı Adı: root Şifreniz: Mysql kurarken belirlediğiniz şifre
Web dosyalarınızı /usr/local/apache2/htdocs klasörünün içerisine atarak yayınlayabilirsiniz.
./configure –prefix=/usr/src/apr/ komutundan sonra make komutu şu hatayı veriyor: make: *** No targets specified and no makefile found. Stop.