Instalasi Nginx MySQL PHP-FPM di Centos 6

Nginx merupakan webserver yang saat ini sangat berkembang cepat dan juga mulai banyak digunakan baik sebagai web server ataupun proxy server. Kehandalan dan kestabilan Nginx sudah dicoba oleh situs-situs besar seperti WordPress, Hulu, RedHat dll. Penggunaan memory Nginx jauh lebih ringan dibandingkan dengan Apache. Di tutorial kali ini, distro yang digunakan adalah CentOs 6, PHP5 (PHP-FPM) dan MySQL.

Persiapan


Login ke server anda sebagai root, lalu update system anda menggunakan yum dengan perintah dibawah ini








yum clean all; yum update -y



ada baiknya anda melakukan reboot (restart) walaupun pada banyak kasus reboot tidak dibutuhkan. Sesuaikan jam di CentOs dengan timezone yang digunakan, disini saya akan menggunakan timezone Asia/jakarta (GMT+7)








rm -f /etc/localtime;cp /usr/share/zoneinfo/Asia/Jakarta /etc/localtime



satu lagi ubah /etc/sysconfig/clock sehingga isinya menjadi








ZONE="Asia/Jakarta"



Instalasi dan Konfigurasi


Ditahap ini akan dijelaskan cara instalasi dan konfigurasi Nginx, PHP-FPM dan MySQL.

PHP FPM


Install paket aplikasi PHP dengan perintah dibawah ini








yum install php-fpm php-cli php-mysql php-gd php-imap php-pear php-xml php-xmlrpc php-mbstring php-mcrypt php-snmp php-soap php-tidy -y



Edit file php.ini dan ubah baris








;cgi.fix_pathinfo=1
;date.timezone



menjadi








cgi.fix_pathinfo=0
date.timezone = Asia/Jakarta



terakhir jalankan daemon php-fpm








/etc/init.d/php-fpm start



MySQL


Install MySQL client dan MySQL server di CentOS dengan cara








yum install mysql-server mysql



jalankan MySQL server dan setting password anda








service mysqld restart; /usr/bin/mysql_secure_installation



Pada pilihan
Enter current password for root (enter for none): (tekan saja enter)
Set root password? [Y/n] (tekan enter)
New password: (buat password baru untuk root mysql anda, bukan password root linux anda)
Re-enter new password: (masukkan password seperti yang diatas sekali lagi)
Remove anonymous users? [Y/n] (tekan enter)
Disallow root login remotely? [Y/n] (tekan enter)
Remove test database and access to it? [Y/n] (tekan enter)
Reload privilege tables now? [Y/n] (tekan enter)

Nginx


Untuk installer Nginx, kita akan langsung mengambil dari repository yang disediakan oleh Nginx sendiri.








yum install http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm



lalu install nginx








yum install nginx



coba akses alamat ip anda melalui browser, tampilannya akan seperti gambar dibawah ini
welcome to nginx
file konfigurasi Nginx terletak di /etc/nginx/nginx.conf, buka file tersebut dan ubah nilai worker_processes dan keepalive_timeout menjadi seperti dibawah ini








worker_processes  5;
keepalive_timeout 3;



virtual host nginx berada di file /etc/nginx/conf.d/default.conf, karena disini kita hanya akan menggunakan 1 buah domain, maka kita akan langsung mengubahnya di default.conf. Edit default.conf hingga tampak seperti dibawah ini








server {
listen 80;
server_name jaranguda.com;

#charset koi8-r;
# access_log /var/log/nginx/log/host.access.log main;

location / {
root /usr/share/nginx/html;
index index.php index.html index.htm;
}

#error_page 404 /404.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;
#}
location ~ \.php$ {
root /usr/share/nginx/html;
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$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;
#}
}



baris yang diubah adalah server_name, index dan location ~ \.php$.
Untuk melihat apakah Nginx, PHP dan MySQL telah terkoneksi buat sebuah file di /usr/share/nginx/html/ bernama info.php isikan script dibawah ini








<?php
phpinfo();
?>



buka di browser anda dengan format ip/info.php contoh 127.0.0.1/info.php
php fpm cgi nginx mysql

0 Response to "Instalasi Nginx MySQL PHP-FPM di Centos 6"

Post a Comment