
NGINX چیە و بۆچی بەکاردێ؟
NGINX وێب سێرڤەرێکە کە لەهەمان کاتدا دەتوانرێ وەک پڕۆکسی پێچەوانە (Reverse Proxy)، هاوسەنگکەری ترافیک (Load Balancer), پرۆکسی ئیمەڵ و کاشینگی HTTP بەکاربێ. دەتوانرێ لەسەر هەریەک لە سیستەمەکانی Linux, Windows و OSX دابەزێنرێ.
بە کورتی جێگرەوەیەکی Apache یە.
دابەزاندن لەسەر Ubuntu
1- دوای ئەوەی Ubuntu بەسەرکەوتوویی دابەزاند، یەکەم هەنگاو نوێکردنەوەی پاکێجەکانی سیستمەکەو دابەزاندنی پاکێجی net-tools ، ئەو فرمانە لە تێرمیناڵدا جێبەجێبکە.
sudo apt updateپاشان
sudo apt install net-tools -y* هەلبەتە ئەگەر وەک root لە تێرمیناڵی پێویست ناکا sudo لە پێش فرمانەکە بنووسی.
2- دواتر بۆ دابەزاندی Nginx ئەو فرمانە جێبەجێبکە
sudo apt install nginx -y
3- وەشانی ١.١٨ ی Nginx بەسەرکەوتوویی دابەزێندرا، بۆ چاڵاک کردنی ئەو فرمانە جێبەجێبکە.
sudo systemctl start nginx
sudo systemctl status nginx
4- بۆ کردنەوەی پەڕەی سەرەتای Nginx لە وێبگەڕ پێویست دەکا لە ڕێی IP سێرڤەرەکەوە بیکەینەوە، بۆ زانینی IP سێڕڤەرەکە ئەو فرمانە جێبەجێبكە.
ifconfig
پاشان بەم شێوەیە دەتوانی لە وێبگەر بیکەیتەوە.
http://server-IPلە کۆتاییدا شتێکی لەم شێوەیە دەبینی، کە نیشاندەری ئەوەیە بە سەرکەوتووی Nginx دابەزێندراوە
بەڕێوەبردنی NGINX
1. بۆ وەستاندی Nginx, ئەو فرمانە جێبەجێبکە:
sudo systemctl stop nginx2. بۆ چاڵاککردنی Nginx, ئەو فرمانە جێبەجێبکە:
sudo systemctl start nginx3. بۆ ڕیستارت کردنی Nginx, ئەو فرمانە جێبەجێبکە:
sudo systemctl restart nginx4. یاخود تەنیا بۆ دووبارە بانگکردنی ئەو گۆڕانکاریانی کە کراون لە Nginx, ئەو فرمانە جێبەجێبکە:
sudo systemctl reload nginx5. بۆ هەڵكردنی Nginx لە بووت, ئەو فرمانە جێبەجێبکە:
sudo systemctl enable nginxزیادکردنی وێبسایتێک بۆ سێرڤەری NGINX
زیادکردنی وێبسایتێک بۆ سێرڤەرەکمان لە ڕێی Nginx ئاسانکاریەکی تەواوی بۆ کراوە،بۆ زیادکردنی هەر وێبسایتێک پێویست دەکا بلۆکێک بۆ Nginx زیادبکەین، بۆ زیادکردنی بلۆکێک پێویست دەکا شوێن ئەم هەنگاوانەی خوارەوە بکەویت.
خۆی خۆکارانە، Nginx بلۆکێکی سەرەتایی لەگەڵە کە لەم شوێنەیە
/var/www/htmlدێین بلۆکێکیت نوێی تایبەت بە دۆمەینەکەمان زیاد دەکەین، بۆ ئەو وانیە دۆمەینی myrooh.com بەکاردێنین.
سەرەتا بوخچەیەکی تایبەت بە دۆمەینەکە دروست دەکەین بەم شێوەیە.
sudo mkdir -p /var/www/myrooh.com/htmlپاشان خاوەنداریەتی دەدین بەو بوخچەیە بۆ ئەو بەکارهێنەرەی لە ژوورەوەیە بۆ تێرمیناڵ
sudo chown -R $USER:$USER /var/www/myrooh.com/htmlدواتر خاوەنیەتی تایبەتتر دەدەین بە بوخچەی سەرەکی دۆمەینەکە تا خاوەنەکە بتوانێ دەسەڵاتی تەواوی هەبێت (read, write and execute) بۆ بوخچەکە.
sudo chmod -R 755 /var/www/myrooh.comلە نێو بوخچەکە پەڕەکی index.html دروست دەکەین کە وەک پەڕەی سەرەتا نیشان دەدرێ لە کاتی کردنەوەی دۆمەینەکە
sudo nano /var/www/myrooh.com/html/index.htmlپاشان ئەو کۆدە HTML بۆ زیاد بکە
<html dir="rtl">
<head>
<meta charset="utf-8" />
<title>بەخێر بێی بۆ MyRooh</title>
</head>
<body>
<h1>بە سەرکەوتوویی بلۆکێکی تایبەت بۆ سێڕڤەر زیادکرا</h1>
</body>
</html>بۆ پاشەکەوتکردن ctl + x دابگرە.
بوخچەی تایبەت بە دۆمەینەکە زیادکرا، پێویست دەکا بلۆکێکی تایبەتی Nginx ی بۆ زیاد بکەین.
بۆ زیادکردنی بلۆک ئەو پەڕگەیە زیادەکەین، ئەو فرمانە جێبەجێبکە.
sudo nano /etc/nginx/sites-available/myrooh.comپاشان کۆدی ڕێکخستنی بۆ زیاد بکە
server {
listen 80;
listen [::]:80;
root /var/www/myrooh.com/html;
index index.html index.htm index.nginx-debian.html;
server_name myrooh.com www.myrooh.com;
location / {
try_files $uri $uri/ =404;
}
}پاشان پاشەکەوتی بکە.
بۆ چاڵاککردنی بلۆکەکە پێویست دەکا لینکی بکەین بۆ بوخچەی sites-enabled، کە Nginx دەیخوێنێتەوە لە کاتی هەڵبوونی
sudo ln -s /etc/nginx/sites-available/myrooh.com /etc/nginx/sites-enabled/تا ئەو گۆڕانکاریانەی کردوومانن جێبەجێ ببن پێویست دەکا Nginx ریستارت بکەین
sudo systemctl restart nginxئێستا ئەگەر دۆمەینەکەمان لە وێبگەر بکەینەوە پەڕەیەکی وا دەبینین
http://domain-name
تێبینی//
پێویست دەکا دۆمەینکەت A recod ی بۆ IPی سێرڤەرەکە هەبێت تا بتوانی لەگەل سێرڤەرەکە پەوەست ببێ.
وە ئەو ڕێکخستنەی کە تا ئێستا کراوە، تەنیا پشتگیری پەڕگە staticکان دەکا. لە وانەکانی داهاتوو باسی دابەزاندی PHP و MySQL دەکەین بە هاوبەشی لەگەڵ Nginx.
پەڕگەی لۆگی NGINX
دوو پەڕگە هەن بۆ لۆگی NGINX کە بریتین لە access بۆ بینی request کان و error بۆ بینینی هەڵەکانی تایبەت بە NGINX.
/var/log/nginx/access.log
/var/log/nginx/error.log