LEMP(Linux , NginX , MariaDB , PHP)

603
Web Development Environment နဲ့ပတ်သက်ရင်  LAMP (Linux, Apache , MySQL , PHP )  ရှိသလို LEMP(Linux, Nginx, MariaDB , PHP )  ဆိုတဲ့ အတွဲလည်းသုံးလို့ရပါတယ် ။  အဲ့ဒါတွေတင်ဖို့ခေါင်းရှုပ်မခံချင်ရင်တော့ XAMPP ကိုသာသုံးပါ ။
Xampp ကို https://www.apachefriends.org/ မှာဒေါင်းလို့ရပါတယ် ။
အခုကတော့ LEMP အကြောင်းပြောမှာဖြစ်ပါတယ်။
Nginx
Nginx  ကို Engine X လို့အသံထွက်ပါတယ်။
Igor Sysoev လို့ခေါ်တဲ့ Russian Developer တစ်ယောက်တီထွင်ခဲ့တာဖြစ်ပါတယ် ။
Opensource Web server တစ်ခုဖြစ်ပြီး Apache ပြီးရင် ဒုတိယလူသုံးအများဆုံးဖြစ်ပါတယ် ။
တတိယလူသုံးအများဆုံးက Microsoft IIS ဖြစ်ပါတယ် ။
MariaDB
လက်ရှိအချိန်မှာ MySQL ဟာလူသုံးအများ RDBMS(Relational Database Management System)
တစ်ခုဖြစ်ပါတယ် ။ MySQL-AB အမည်ရှိ ဆွီဒင်အခြေစိုက်အဖွဲ့တစ်ဖွဲ့က Develop လုပ်ခဲ့တာဖြစ်ပါတယ်။
နောက်ပိုင်း Sun Microsystem ကဝယ်လိုက်ပြီး Sun ကိုတော့ Oracle ကပိုင်သွားလို့ အခု MySQL ဟာ
Oracle ပိုင်နည်းပညာတစ်ခုဖြစ်ပါတယ် ။ MariaDB ကတော့ MySQL ရဲ့မူလဖန်တီးရှင် Monty Widenius ကဖန်တီးခဲ့တာ
ဖြစ်ပြီး MySQL ရဲ့ Source Code ကိုပဲ သုံးထားတာဖြစ်ပါတယ် ။ သုံးရတာ MySQL အတိုင်းပါပဲ ။ အကုန်အတူတူပါပဲ။
MySQL ကို  My S Q L လို့တစ်ချို့ကအသံထွက်ကြပြီး တစ်ချို့က My Sequal လို့အသံထွက်ပါတယ် ။
အခုက LEMP ကို  Install လုပ်မှာဖြစ်တဲ့အတွက် XAMPP တို့ LAMP တို့ တင်ထားရင်ပြန်ဖြုတ်ရမှာဖြစ်ပါတယ် ။
မတင်ထားရင်တော့မလိုပါဘူး ။ တန်းတင်ရုံပါပဲ။
တကယ်လို့ကိုယ့်စက်မှာ XAMPP install လုပ်ထားတယ်ဆိုရင်တော့ ပြန်ဖြုတ်ရတာလွယ်ပါတယ် ။
sudo /opt/lampp/lampp stop
sudo rm -rf /opt/lampp
sudo rm -rf ~/.lampp
ဆိုရပါပြီ။
တကယ်လို့ကိုယ့်စက်မှာ LAMP Stack ကို တင်ထားတယ် ဆိုရင် အောက်ပါအတိုင်း ပြန်ဖြုတ်ရမှာဖြစ်ပါတယ်။

Remove Apache2

sudo service apache2 stop
sudo apt-get remove –purge apache2 apache2-utils apache2.2-bin apache2-common -y
sudo apt-get autoremove
sudo apt-get autoclean

Apache ရဲ့Config  ဖိုင်တွေကျန်သေးလားစစ်ကြည့်ပါ။

whereis apache2
ကျန်သေးရင်ဖျက်လိုက်ပါ။
sudo rm -rf /etc/apache2
sudo rm -rf /usr/lib/apache2 
sudo rm -rf /usr/include/apache2
Remove MySQL
sudo apt-get remove –purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
Nginx install လုပ်ပါ။

sudo apt-get install nginx
sudo service nginx start

Nginx ဟာ Ubuntu ရဲ့Official Repo ထဲမှာက Stable ဖြစ်တဲ့ Version အဟောင်းသာရှိတတ်တာကြောင့်

Up to Date ဖြစ်မှသုံးချင်တယ်ဆိုရင်

add-apt-repository ppa:nginx/stable
apt-get update
apt-get install nginx

ဆိုပြီးတင်ပေးလို့ရပါတယ် ။

Nginx ရဲ့ Configuration တစ်ချို့ပြင်ပေးဖို့လိုပါလိမ့်မယ် ။

sudo gedit /etc/nginx/nginx.conf

 lscpu ရိုက်ကြည့်ပါ ။

ကိုယ့်မှာရှိတဲ့CPUအရေအတွက်အတိုင်း

worker_processes 4;

ဆိုတဲ့နေရာမှာပြင်ပေးလိုက်ပါ။ 3 ပြရင် 3 ထားပေးပါ ။ 2 ပြရင် 2 ပေါ့။

ပြီးရင် Nginx ကို Restart လုပ်ပါ။

sudo service nginx restart

ပြီးရင် /etc/nginx/sites-available/default ကို Gedit/ VIM / nano  ကြိုက်တာနဲ့ဖွင့်ပါ

index.php ဆိုတာလေးထည့်ပေးဖို့လိုပါလိမ့်မယ် ။ အောက်ပါအတိုင်း ဖြစ်မဖြစ်တိုက်စစ်ကြည့်ပါ။

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;
root /usr/share/nginx/html;
index index.php index.html index.htm; #

# Make site accessible from http://localhost/
server_name localhost
}

 #location ~ \.php$. ဆိုတဲ့နေရာကိုရှာပါ။ Comment ပိတ်ထားသောနေရာများကို အောက်ပါပုံစံအတိုင်းဖြစ်အောင် Uncomment လုပ်ပေးပါ။

location ~ \.php$ {

try_files $uri =404; ———> Add this line
fastcgi_split_path_info ^(.+\.php)(/.+)$;
#     # NOTE: You should have “cgi.fix_pathinfo = 0;” in php.ini
#

#     # With php5-cgi alone:

#       fastcgi_pass 127.0.0.1:9000;
#     # With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params
}

ပြီးရင် Save ပြီးထွက်လိုက်ပါ ။

sudo nginx -t

လို့ရိုက်လိုက်ပါ။

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

ဆိုပြီးပြပါလိမ့်မယ်။

Nginx ကို Restart လုပ်ပါ။

တစ်ခုသတိထားပေးပါ။

include fastcgi.conf ဆိုတဲ့ စာကြောင်းမပါပါ။

include fastcgi_params ပဲဖြစ်ရပါမယ် ။ Google ကရှာတွေ့တဲ့ Guide တွေမှာက include fastcgi.conf ပဲပြထားတော့

include fastcgi_params ကိုဖျက်လိုက်ပြီးပြင်ရေးလိုက်မှာစိုးလို့ပါ ။ အဲ့ဒါဆို test fail လို့ပြပါလိမ့်မယ် ။

အခုချိန်မှာ Browser မှာ localhost ကိုခေါ်ကြည့်ရင် Nginx start page ကိုစမြင်ရပြီဖြစ်ပါတယ်။

Installing MariaDB

MariaDB ကိုInstall လုပ်ရမယ့် Command ပါ secure_installation setting တွေကတော့ MySQL နဲ့

အတူတူမို့ရေးမပေးတော့ပါဘူး

sudo apt-get install mariadb-server  mariadb-client libmariadbclient-dev libmariadbd-dev

MariaDB ထဲတစ်ချက်ဝင်ကြည့်ပါဦး

mysql -u root -p

Status နဲ့စစ်ကြည့်ချင်ရင်

sudo service mysql status

 

PHP

sudo apt-get install php5 php5-fpm php5-mysql

PHP နဲ့ဆိုင်တဲ့ Config ကိုပြင်ပေးဖို့လိုပါသေးတယ်

sudo gedit /etc/php5/fpm/php.ini

 

cgi.fix_pathinfo=1 ကို Comment ပိတ်ထားပြီးတာတွေ့ပါလိမ့်မယ် Uncomment လုပ်ပြီး 0ထားလိုက်ပါ။ Save & Exit

လုပ်ပြီး-

sudo service php5-fpm restart

လုပ်ပြီးရင်သုံးလို့ရပါပြီ document path လမ်းကြောင်းက /usr/share/nginx/html/ ဖြစ်ပါတယ် ။

nginx ကို SQL gui tool အနေနဲ့ PhpMyAdmin , sqlbuddy နှစ်သက်ရာထည့်သုံးပါ။

PhpMyAdmin ကိုတော့ဒီလို Install  လုပ်နိုင်ပါတယ် ။

sudo apt-get install phpmyadmin

MariaDB ကို ပြောင်းသုံးချင်မှ Mysql ကိုဖြုတ်ပါ ။ မဟုတ်ရင်တော့ဖြုတ်စရာမလိုပါ ။ အချိန်ကုန်လို့ပါ ။ 😀

ဒါကျွန်တော့်ဖာသာစမ်းထားတဲ့ ဟာဖြစ်ပါတယ် ။ Guide သုံးခုလောက်ဖတ်ပြီး အဆင်ပြေအောင်လုပ်ထားတာပါ ။

မှားနေတာ ။ ပြင်ဆင်ဖြည့်စွက်စေချင်တာရှိရင်လည်း ပြောပြပေးပါဦး။ ကျွန်တော့် mail က [email protected] ဖြစ်ပါတယ်။

ကိုအိမောင်ရေးတဲ့ Professional Web Developer ထဲကအချက်အလက်တစ်ချို့ကိုးကားထားပါတယ်။