Debian 12 پر Nginx انسٹال کریں۔

Debian 12 Pr Nginx Ans Al Kry



اس گائیڈ میں، ہم ڈیبین 12 پر Nginx کو انسٹال اور کنفیگر کرنے کا طریقہ دکھائیں گے۔

شرائط:

اس گائیڈ میں دکھائے گئے اقدامات کو انجام دینے کے لیے، آپ کو درج ذیل اجزاء کی ضرورت ہے:

  • ایک مناسب طریقے سے تشکیل شدہ ڈیبین 12 سسٹم۔ اس کو دیکھو ورچوئل باکس VM پر ڈیبین کو کیسے انسٹال کریں۔ .
  • سوڈو استحقاق کے ساتھ غیر جڑ صارف تک رسائی۔ متعلق مزید پڑھئے استعمال کرتے ہوئے sudo استحقاق کا انتظام کرنا /etc/sudoers ڈیبین میں .

ڈیبین پر Nginx

کی طرف سے تیار اور برقرار رکھا ڈیبین پروجیکٹ ، ڈیبین ایک ہے۔ مقبول مفت، اور اوپن سورس لینکس کی تقسیم۔ Debian اپنے استحکام، سلامتی، اور کمیونٹی سپورٹ کے لیے مشہور ہے۔ Debian 12 (کوڈ نام 'bookworm') تازہ ترین مستحکم ریلیز ہے۔ متعلق مزید پڑھئے Debian 11 سے Debian 12 میں اپ گریڈ کرنا .







Nginx ایک مفت اور اوپن سورس ویب سرور ہے جو اپنی اعلیٰ کارکردگی، اسکیل ایبلٹی، میموری کی کارکردگی اور سیکیورٹی کے لیے جانا جاتا ہے۔ مزید یہ کہ یہ ریورس پراکسی، لوڈ بیلنسر، HTTP کیشے وغیرہ کے طور پر بھی کام کر سکتا ہے۔



Debian پر، Nginx براہ راست آفیشل پیکیج ریپوز سے دستیاب ہے۔ تاہم، اس کے نتیجے میں یہ قدرے پرانا ہو سکتا ہے۔ ڈیبین کا پیکیج ریلیز سائیکل . شکر ہے، Nginx تازہ ترین ریلیز کے ساتھ ایک آفیشل ڈیبین ریپو پیش کرتا ہے۔



طریقہ 1: ڈیبین ریپو سے Nginx انسٹال کرنا

سب سے پہلے، ایک ٹرمینل ونڈو کھولیں اور APT ریپو کیش کو اپ ڈیٹ کریں:





$ sudo مناسب اپ ڈیٹ

Nginx 'nginx' پیکیج کے طور پر دستیاب ہے:



$ apt شو nginx

Nginx انسٹال کرنے کے لیے درج ذیل کمانڈ کو چلائیں:

$ sudo مناسب انسٹال کریں nginx

طریقہ 2: Nginx Repo سے Nginx انسٹال کرنا

Nginx APT ریپو کو ترتیب دینا Nginx کا تازہ ترین ورژن فراہم کرتا ہے۔ تاہم، یہ ڈیفالٹ ریپو سے دوسرے Nginx پیکجوں سے متصادم ہو سکتا ہے۔

تنصیب کی شرائط

سب سے پہلے، ضروری پیکجوں کو انسٹال کریں:

$ sudo مناسب انسٹال کریں curl gnupg2 ca-سرٹیفکیٹس lsb-release debian-archive-keyring

جی پی جی سائننگ کلید درآمد کرنا

ڈاؤن لوڈ کردہ پیکجوں کی صداقت کی تصدیق کے لیے APT کے لیے Nginx سائننگ کلید درکار ہے۔ دستخط کی کلید پکڑو:

$ curl https: // nginx.org / چابیاں / nginx_signing.key | جی پی جی --پیاری | sudo ٹی / usr / بانٹیں / چابیاں / nginx-archive-keyring.gpg > / دیو / خالی

تصدیق کریں کہ آیا مناسب کلید درآمد کی گئی ہے:

$ جی پی جی --dry-run --چپ --no-keyring -- درآمد -- درآمد کے اختیارات درآمد شو / usr / بانٹیں / چابیاں / nginx-archive-keyring.gpg

آؤٹ پٹ کو کلید کے فنگر پرنٹ کے طور پر 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 پرنٹ کرنا چاہئے۔ اگر نہیں، تو فائل کو ہٹا دیں۔ /usr/share/keyrings/nginx-archive-keyring.gpg اور عمل کو دوبارہ شروع کریں.

Nginx APT ریپو شامل کرنا

سائننگ کی انسٹال ہونے کے ساتھ، اب ہم Nginx ریپو کو APT میں شامل کر سکتے ہیں۔ Nginx دو ریلیز شاخیں پیش کرتا ہے:

مستحکم : تھرڈ پارٹی ماڈیولز کے ساتھ بہتر مطابقت۔ صرف اہم اصلاحات حاصل کرتا ہے۔

مین لائن : نئی خصوصیات ماڈیول کی مطابقت کو متاثر کر سکتی ہیں۔ تاہم، اس میں مزید بگ فکسز، سیکیورٹی پیچ، اور اہم اصلاحات موصول ہوتی ہیں۔

Nginx باضابطہ طور پر تمام معاملات میں مین لائن برانچ کو تعینات کرنے کی سفارش کرتا ہے۔ Nginx مین لائن برانچ کو شامل کرنے کے لیے درج ذیل کمانڈ کو چلائیں:

$ بازگشت deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/mainline/debian `lsb_release -cs` nginx' | sudo ٹی / وغیرہ / مناسب / Source.list.d / nginx.list

اگر آپ اس کے بجائے Nginx مستحکم برانچ چاہتے ہیں تو درج ذیل کمانڈ کو چلائیں:

$ بازگشت deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] http://nginx.org/packages/debian `lsb_release -cs` nginx' | sudo ٹی / وغیرہ / مناسب / Source.list.d / nginx.list

ریپو پننگ

Nginx سے متعلقہ پیکجوں سے نمٹنے کے دوران APT کو Nginx repo استعمال کرنے پر مجبور کرنے کے لیے، ہم ریپو پننگ کو فعال کرتے ہیں:

$ بازگشت -یہ ہے 'پیکیج:* \n پن: اصل nginx.org \n پن: ریلیز o=nginx \n پن-ترجیح: 900 \n ' | sudo ٹی / وغیرہ / مناسب / ترجیحات.d / 99nginx

Nginx انسٹال کرنا

نئے ریپو کی تشکیل کے ساتھ، APT ریپو کیشے کو اپ ڈیٹ کریں:

$ sudo مناسب اپ ڈیٹ

Nginx پیکیج کی معلومات دیکھیں:

$ apt شو nginx

آخر میں، Nginx انسٹال کریں:

$ sudo مناسب انسٹال کریں nginx

فائر وال ایڈجسٹمنٹ

Debian پہلے سے انسٹال شدہ iptables (netfilter) فائر وال کے ساتھ آتا ہے۔ استعمال میں آسانی کے لیے، تاہم، اسے استعمال کرنے کی سفارش کی جاتی ہے۔ UFW فائر وال . یہ بنیادی طور پر نیٹ فلٹر کے لیے زیادہ صارف دوست فرنٹ اینڈ ہے۔

پہلے سے طے شدہ طور پر، UFW Nginx کو نیٹ ورک تک رسائی سے روکتا ہے۔ HTTP/HTTPS دونوں تک رسائی کی اجازت دینے کے لیے، درج ذیل کمانڈ کو چلائیں:

$ sudo اوہ اجازت دیں 80 , 443 / tcp

اگر آپ صرف HTTP تک رسائی چاہتے ہیں تو اس کے بجائے درج ذیل کمانڈ کا استعمال کریں:

$ sudo اوہ اجازت دیں 80 / tcp

اگر آپ صرف HTTPS تک رسائی چاہتے ہیں تو اس کے بجائے درج ذیل کمانڈ کا استعمال کریں:

$ sudo اوہ اجازت دیں 443 / tcp

تصدیق کریں کہ آیا قواعد کامیابی کے ساتھ شامل کیے گئے تھے:

$ sudo ufw کی حیثیت

Nginx انسٹالیشن کی تصدیق کرنا

کچھ طریقے ہیں جن میں ہم تصدیق کر سکتے ہیں کہ آیا Nginx انسٹالیشن کامیاب ہے۔ سب سے پہلے، Nginx سروس کی حیثیت کو چیک کریں:

$ sudo systemctl اسٹیٹس nginx

اگر یہ نہیں چل رہا ہے تو، سرور شروع کریں:

$ sudo systemctl nginx شروع کریں۔

اب، ویب براؤزر میں درج ذیل یو آر ایل کو کھولیں:

$ http: // localhost_or_server_ip /

آپ کو ڈیفالٹ Nginx ویلکم پیج پر اترنا چاہیے۔

Nginx عمل کا انتظام

انسٹال ہونے پر، Nginx systemd کے ساتھ ایک سروس رجسٹر کرتا ہے۔ ہم سروس کا استعمال کرتے ہوئے Nginx کے عمل کو آسانی سے منظم کر سکتے ہیں۔

Nginx کی حیثیت

درج ذیل کمانڈ Nginx کی حیثیت لوٹاتا ہے:

$ sudo systemctl اسٹیٹس nginx

Nginx کو روکنا

درج ذیل کمانڈ Nginx کو روکتی ہے۔

$ sudo systemctl سٹاپ nginx

Nginx شروع کر رہا ہے۔

اگر Nginx نہیں چل رہا ہے تو، سرور کو شروع کرنے کے لیے درج ذیل کمانڈ کا استعمال کریں:

$ sudo systemctl nginx شروع کریں۔

Nginx کو دوبارہ لوڈ کرنا

Nginx کو اس کی ترتیب میں کسی بھی تبدیلی کو لاگو کرنے کے لئے مکمل دوبارہ شروع کرنے کی ضرورت نہیں ہے۔ اس صورت میں، ہم کسی بھی کنکشن کو چھوڑے بغیر Nginx سروس کو دوبارہ لوڈ کر سکتے ہیں:

$ sudo systemctl nginx کو دوبارہ لوڈ کریں۔

Nginx کو دوبارہ شروع کرنا

Nginx سرور کو دوبارہ شروع کرنے کے لئے، درج ذیل کمانڈ کو چلائیں:

$ sudo systemctl nginx کو دوبارہ شروع کریں۔

Nginx کو دوبارہ لوڈ کرنا یا دوبارہ شروع کرنا

اگر آپ کو یقین نہیں ہے کہ Nginx کو دوبارہ لوڈ کرنا ہے یا دوبارہ شروع کرنا ہے تو درج ذیل کمانڈ کا استعمال کریں:

$ sudo systemctl دوبارہ لوڈ یا nginx کو دوبارہ شروع کریں۔

اس صورت میں، systemd خود بخود بہترین عمل کا فیصلہ کرتا ہے۔

بونس ٹپس 1: Nginx بلاکس

اپاچی میں ورچوئل میزبانوں کی طرح، Nginx بھی ایک سرور پر متعدد میزبانوں کو سپورٹ کرتا ہے۔

یہاں ایک ڈمی کنفیگریشن ہے جو دو ورچوئل سرورز کو ہینڈل کرتی ہے ( ذریعہ ):

http {

انڈیکس انڈیکس html ;

سرور {

سرور_نام www. ڈومین 1 . کے ساتھ ;

رسائی_لاگ لاگز / ڈومین 1۔ رسائی . لاگ مرکزی ;

جڑ / تھا / www / ڈومین 1۔ کے ساتھ / htdocs ;

}

سرور {

سرور_نام www. ڈومین 2 . کے ساتھ ;

رسائی_لاگ لاگز / ڈومین 2۔ رسائی . لاگ مرکزی ;

جڑ / تھا / www / ڈومین 2۔ کے ساتھ / htdocs ;

}

}

فائل کنفیگریشن فائل کے اندر متعدد بلاکس پر مشتمل ہے، ہر ایک مختلف خصوصیات کو بیان کرتا ہے۔ سب سے اہم بلاکس سرور اور لوکیشن بلاکس ہیں:

  • سرور : یہ ایک مخصوص قسم کی کلائنٹ کی درخواستوں کو سنبھالنے کے لیے ایک ورچوئل سرور کی وضاحت کرتا ہے۔ متعدد ورچوئل سرورز کے لیے متعدد سرور بلاکس ہو سکتے ہیں۔ آنے والے کنکشنز کو درخواست کردہ ڈومین نام، IP ایڈریس اور پورٹ کی بنیاد پر مختلف سرور بلاکس پر بھیج دیا جاتا ہے۔
  • مقام : یہ سرور بلاک کے اندر ایک ذیلی بلاک ہے۔ یہ بیان کرتا ہے کہ Nginx کو مختلف وسائل کے لیے آنے والی کلائنٹ کی درخواستوں کو کیسے ہینڈل کرنا چاہیے۔

یہ کنفیگریشنز فائلوں میں محفوظ ہیں۔ /etc/nginx/sites-دستیاب . ہر سرور بلاک کے لیے منفرد فائلیں ہو سکتی ہیں۔ کے نیچے رکھے جانے پر کنفیگریشنز کا اطلاق ہوتا ہے۔ /etc/nginx/sites-enabled . عام طور پر، دستیاب سائٹس سے کنفیگریشن فائلوں کو سائٹس کے ساتھ ہم آہنگ کیا جاتا ہے۔

بونس ٹپس 2: اہم Nginx فائلیں اور ڈائریکٹریز

یہاں اہم Nginx فائلوں اور ڈائریکٹریوں کی ایک مختصر فہرست ہے:

  • /etc/nginx : پیرنٹ ڈائرکٹری جو تمام Nginx کنفیگریشنز کی میزبانی کرتی ہے۔
  • /etc/nginx/sites-دستیاب : اس میں سرور بلاک فائلیں ہیں۔ کنفیگریشن فائلیں استعمال نہیں ہوتیں۔
  • /etc/nginx/sites-enabled : یہ فی سائٹ سرور بلاکس کی بھی میزبانی کرتا ہے۔ عام طور پر، وہ دستیاب سائٹس سے سملنک ہوتے ہیں۔ Nginx کلائنٹ کی درخواستوں کو پورا کرنے کے لیے اس ڈائرکٹری سے کنفیگریشن کو فعال طور پر استعمال کرتا ہے۔
  • /etc/nginx/snippets : یہ کنفیگریشن کے ٹکڑوں کی میزبانی کرتا ہے جنہیں کہیں اور لاگو کیا جا سکتا ہے۔
  • /etc/nginx/ngnix.conf : یہ Nginx کے لیے بنیادی کنفیگریشن فائل ہے۔ یہ Nginx کے عالمی طرز عمل کو سنبھالتا ہے۔

نتیجہ

ہم نے Debian پر Nginx انسٹال کرنے کے مختلف طریقوں کی نمائش کی۔ ہم نے مختصر طور پر اس بات پر بھی تبادلہ خیال کیا کہ سسٹم ڈی کا استعمال کرتے ہوئے Nginx عمل کو کیسے منظم کیا جائے۔ اس کے علاوہ، ہم نے مختصر طور پر Nginx بلاکس پر بھی چھو لیا اور یہ کہ Nginx کو متعدد ورچوئل میزبانوں کی خدمت کے لیے کنفیگر کیا جا سکتا ہے۔

Nginx کے بارے میں مزید جاننے میں دلچسپی ہے؟ چیک کریں Nginx ذیلی زمرہ .