loader

berikut ini adalah tutorial Cara Install Linux Nginx MySQL PHP CentOS Bab1, sebagai informasi untuk pembaca GemarOprek. blog ini sudah tidak menggunakan kloxoMR sebagai control panelnya, hal ini karena keinginan penulis untuk “kembali ke jalan yang benar”, eh?

alasan utama penulis meng-downgrade server ini menggunakan versi manual dengan LEMP (Linux, Nginx, MariaDB, PHP) adalah untuk lebih membiasakan diri dengan keyboard daripada klik-klik.

kali ini saya akan berbagi tutorial menginstall LEMP + varnish, sebelum memulai dan mengikuti tutorial ini. ada baiknya anda compare dahulu system yang telah ada seperti apache dan MySQL untuk meminimalisir kesalahan yang tidak diinginkan.

  • Migration Apache to Nginx (cooming soon)

Saran dari saya, ada baiknya backup data website/blog anda dan reinstall server atau VPS anda. hal ini akan lebih memudahkan anda dalam bereksplorasi

Namun jika anda telah membaca tutorial diatas, mari kita mulai untuk menginstall LEMP

Cara Install Linux Nginx MySQL PHP CentOS Bab1

pertama-tama, cek terlebih dahulu versi Centos anda dengan perintah

[[email protected] ~]# uname -m
i686

lalu cari repo yang sesuai dengan versi CentOS anda pada link ini

selanjutnya pastikan apache dan MySQL tidak terinstall

[[email protected] ~]# yum -y remove httpd
[[email protected] ~]# yum -y remove mysql* mysql-server mysql-devel mysql-libs
  • install Nginx
[[email protected] ~]# yum update && yum upgrade
[[email protected] ~]# wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
[[email protected] ~]# rpm -Uvh epel-release-6-8.noarch.rpm
[[email protected] ~]# yum repolist
[[email protected] ~]# yum -y install nginx
  • restart Nginx dan setting Nginx di startup CentOS
[[email protected] ~]# service nginx start && chkconfig nginx on
  • setting nginx untuk mencocokkan core CPU server anda:
[[email protected] ~] sed "s/.*worker_processes.*/worker_processes $(nproc);/" /etc/nginx/nginx.conf
  • Increase server bucket size untuk URL panjang dengan nginx:
sed '/^.*include /etc/nginx/.*/{s/$/\n    server_names_hash_bucket_size 64;}' /etc/nginx/nginx.conf
  • edit file /etc/nginx/conf.d/default.conf dan replace dengan nama website/blog anda
#
# The default server
#
server {
    listen       80 default_server;
    server_name  gemaroprek.com;

    #charset koi8-r;

    #access_log  logs/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.php index.html index.htm;
        try_files $uri $uri/ /index.php?$args;
    }

    error_page  404              /404.html;
    location = /404.html {
        root   /usr/share/nginx/html;
    }

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root           /usr/share/nginx/html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        include        fastcgi_params;
    }
    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}
  • restart kembali nginx
[[email protected] ~]#  service nginx restart

download dan install REMI repository

[[email protected] ~]# wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
[[email protected] ~]# rpm -Uvh remi-release-6.rpm
[[email protected] ~]# sed "s/.*enabled=0.*/enabled=1/" /etc/yum.repos.d/remi.repo
[[email protected] ~]# yum repolist
  • enable remi repository
[[email protected] ~]# yum --enablerepo=remi-test --disablerepo=remi install compat-mysql55
  • buat file repository MariaDB pada dengan nama file /etc/yum.repos.d/mariadb.repo
[[email protected] ~]# vim /etc/yum.repos.d/mariadb.repo

isi sesuai versi OS anda

Untuk system 32bit

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-x86
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Untuk system 64bit

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
  • update kembali dengan perintah yum
[[email protected] ~]# yum -y update
[[email protected] ~]# yum -y install MariaDB-devel MariaDB-client MariaDB-server
  • restart MariaDB dan setting agar berjalan di startup CentOS
[[email protected] ~]# service mysql start && chkconfig mysql on
  • setting SQL root password:
[[email protected] ~]# /usr/bin/mysql_secure_installation
  • Install PHP
[[email protected] ~]# yum -y install php php-common php-fpm php-mysql
  • restart PHP dan setting agar berjalan di startup CentOS
[[email protected] ~]# service php-fpm start && chkconfig php-fpm on
  • Configure PHP:
[[email protected]prek ~]# sed "s/.*cgi.fix_pathinfo=.*/cgi.fix_pathinfo=0/" /etc/php.ini
  • setting php5-fpm user/group untuk nginx:
[[email protected] ~]# sed "s/.*user =.*/user = nginx/" etc/php-fpm.d/www.conf && sed "s/.*group =.*/group = nginx/" etc/php-fpm.d/www.conf
  • Restart php5-fpm
[[email protected] ~]# service php-fpm restart
  • buat file info.php untuk mengecek apakah server sudah berjalan dengan baik
[[email protected] ~]# echo " /usr/share/nginx/html/info.php >> echo "phpinfo();" >> /usr/share/nginx/html/info.php >> echo "?>" >> /usr/share/nginx/html/info.php

jika tidak terjadi error, berarti server telah siap digunakan namun tulisan Cara Install Linux Nginx MySQL PHP CentOS Bab1 ini semakin panjang. mari kita lanjut ke sesi ke 2

Sekilas tentang penulis, mimin ArieL FX

Seorang Kuli Server & Datacenter, Terkadang Mendadak menjadi "cowok bayaran". Hanya seorang pengembara dilayar "hitam". Contact: Google+, Twitter and Facebook

Leave a Reply

Your email address will not be published. Required fields are marked *

thirteen + 15 =