ডেবিয়ান 12 এ Nginx ইনস্টল করুন

Debiyana 12 E Nginx Inastala Karuna



এই গাইডে, আমরা ডেবিয়ান 12-এ Nginx কীভাবে ইনস্টল এবং কনফিগার করতে হয় তা প্রদর্শন করব।

পূর্বশর্ত:

এই নির্দেশিকায় প্রদর্শিত পদক্ষেপগুলি সম্পাদন করতে, আপনার নিম্নলিখিত উপাদানগুলির প্রয়োজন:

  • একটি সঠিকভাবে কনফিগার করা ডেবিয়ান 12 সিস্টেম। চেক আউট ভার্চুয়ালবক্স ভিএম-এ ডেবিয়ান কীভাবে ইনস্টল করবেন .
  • সুডো বিশেষাধিকার সহ একটি নন-রুট ব্যবহারকারীর অ্যাক্সেস। এই সম্পর্কে আরও জানো ব্যবহার করে সুডো বিশেষাধিকার পরিচালনা করা /etc/sudoers ডেবিয়ানে .

ডেবিয়ানে Nginx

দ্বারা উন্নত এবং রক্ষণাবেক্ষণ ডেবিয়ান প্রজেক্ট , ডেবিয়ান হল a জনপ্রিয় , বিনামূল্যে, এবং ওপেন সোর্স লিনাক্স বিতরণ। ডেবিয়ান তার স্থিতিশীলতা, নিরাপত্তা এবং সম্প্রদায় সমর্থনের জন্য সুপরিচিত। ডেবিয়ান 12 (কোডনাম 'বুকওয়ার্ম') সর্বশেষ স্থিতিশীল রিলিজ। এই সম্পর্কে আরও জানো ডেবিয়ান 11 থেকে ডেবিয়ান 12 এ আপগ্রেড করা হচ্ছে .







Nginx এটি একটি বিনামূল্যের এবং ওপেন সোর্স ওয়েব সার্ভার যা উচ্চ কার্যক্ষমতা, স্কেলেবিলিটি, মেমরি দক্ষতা এবং নিরাপত্তার জন্য পরিচিত। তাছাড়া, এটি একটি বিপরীত প্রক্সি, লোড ব্যালেন্সার, HTTP ক্যাশে ইত্যাদি হিসাবে কাজ করতে পারে।



ডেবিয়ানে, Nginx সরাসরি অফিসিয়াল প্যাকেজ রেপো থেকে পাওয়া যায়। যাইহোক, এর ফলে এটি কিছুটা পুরানো হতে পারে ডেবিয়ানের প্যাকেজ রিলিজ চক্র . সৌভাগ্যক্রমে, Nginx সর্বশেষ রিলিজের সাথে একটি অফিসিয়াল ডেবিয়ান রেপো অফার করে।



পদ্ধতি 1: ডেবিয়ান রেপো থেকে Nginx ইনস্টল করা

প্রথমে, একটি টার্মিনাল উইন্ডো খুলুন এবং APT রেপো ক্যাশে আপডেট করুন:





$ sudo উপযুক্ত আপডেট

Nginx 'nginx' প্যাকেজ হিসাবে উপলব্ধ:



$ apt শো nginx

Nginx ইনস্টল করতে, নিম্নলিখিত কমান্ডটি চালান:

$ sudo উপযুক্ত ইনস্টল nginx

পদ্ধতি 2: Nginx রেপো থেকে Nginx ইনস্টল করা

Nginx APT রেপো কনফিগার করা Nginx এর সর্বশেষ সংস্করণ প্রদান করে। যাইহোক, এটি ডিফল্ট রেপো থেকে অন্যান্য Nginx প্যাকেজের সাথে বিরোধ করতে পারে।

পূর্বশর্ত ইনস্টল করা

প্রথমে, পূর্বশর্ত প্যাকেজগুলি ইনস্টল করুন:

$ sudo উপযুক্ত ইনস্টল curl gnupg2 ca-সার্টিফিকেট lsb-রিলিজ debian-archive-keyring

GPG সাইনিং কী আমদানি করা হচ্ছে

ডাউনলোড করা প্যাকেজগুলির সত্যতা যাচাই করার জন্য APT-এর জন্য Nginx সাইনিং কী প্রয়োজন। সাইনিং কী ধরুন:

$ কার্ল https: // nginx.org / কী / nginx_signing.key | জিপিজি --প্রিয় | sudo টি / usr / ভাগ / চাবির রিং / nginx-archive-keyring.gpg > / দেব / খালি

সঠিক কী আমদানি করা হয়েছে কিনা তা যাচাই করুন:

$ জিপিজি --শুষ্ক রান -- শান্ত --নো-কিরিং --আমদানি --আমদানি-বিকল্প আমদানি প্রদর্শন / usr / ভাগ / চাবির রিং / nginx-archive-keyring.gpg

আউটপুটটি কীটির আঙ্গুলের ছাপ হিসাবে 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 মুদ্রণ করবে৷ যদি না হয়, ফাইল থেকে সরান /usr/share/keyrings/nginx-archive-keyring.gpg এবং প্রক্রিয়া পুনরায় আরম্ভ করুন।

Nginx APT রেপো যোগ করা হচ্ছে

সাইনিং কী ইনস্টল করার সাথে, আমরা এখন এপিটিতে Nginx রেপো যোগ করতে পারি। 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 রেপো ব্যবহার করতে বাধ্য করতে, আমরা রেপো পিনিং সক্ষম করি:

$ প্রতিধ্বনি -এইটা 'প্যাকেজ: * \n পিন: অরিজিন nginx.org \n পিন: রিলিজ o=nginx \n পিন-অগ্রাধিকার: 900 \n ' | sudo টি / ইত্যাদি / উপযুক্ত / preferences.d / 99nginx

Nginx ইনস্টল করা হচ্ছে

নতুন রেপো কনফিগার করার সাথে, APT রেপো ক্যাশে আপডেট করুন:

$ sudo উপযুক্ত আপডেট

Nginx প্যাকেজ তথ্য দেখুন:

$ apt শো nginx

অবশেষে, Nginx ইনস্টল করুন:

$ sudo উপযুক্ত ইনস্টল nginx

ফায়ারওয়াল সামঞ্জস্য

ডেবিয়ান iptables (নেটফিল্টার) ফায়ারওয়াল পূর্বেই ইনস্টল করা সহ আসে। ব্যবহারের সুবিধার জন্য, তবে, এটি ব্যবহার করার জন্য সুপারিশ করা হয় UFW ফায়ারওয়াল . এটি মূলত নেটফিল্টারের জন্য আরও ব্যবহারকারী-বান্ধব ফ্রন্টএন্ড।

ডিফল্টরূপে, UFW Nginx কে নেটওয়ার্ক অ্যাক্সেস থেকে ব্লক করে। HTTP/HTTPS উভয় অ্যাক্সেসের অনুমতি দিতে, নিম্নলিখিত কমান্ডটি চালান:

$ sudo ওহ অনুমতি 80 , 443 / টিসিপি

আপনি যদি শুধুমাত্র HTTP অ্যাক্সেস চান তবে পরিবর্তে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

$ sudo ওহ অনুমতি 80 / টিসিপি

আপনি যদি শুধুমাত্র HTTPS অ্যাক্সেস চান তবে পরিবর্তে নিম্নলিখিত কমান্ডটি ব্যবহার করুন:

$ sudo ওহ অনুমতি 443 / টিসিপি

নিয়ম সফলভাবে যোগ করা হয়েছে কিনা যাচাই করুন:

$ sudo ufw স্ট্যাটাস

Nginx ইনস্টলেশন যাচাই করা হচ্ছে

Nginx ইনস্টলেশন সফল কিনা তা আমরা যাচাই করতে পারি এমন কয়েকটি উপায় রয়েছে। প্রথমে, Nginx পরিষেবার স্থিতি পরীক্ষা করুন:

$ sudo systemctl অবস্থা nginx

যদি এটি চালু না হয়, সার্ভারটি শুরু করুন:

$ sudo systemctl শুরু nginx

এখন, একটি ওয়েব ব্রাউজারে নিম্নলিখিত URLটি খুলুন:

$ http: // localhost_or_server_ip /

আপনার ডিফল্ট Nginx স্বাগতম পৃষ্ঠায় অবতরণ করা উচিত।

Nginx প্রক্রিয়া পরিচালনা

ইনস্টলেশনের পরে, Nginx systemd এর সাথে একটি পরিষেবা নিবন্ধন করে। আমরা পরিষেবা ব্যবহার করে সহজেই Nginx প্রক্রিয়াগুলি পরিচালনা করতে পারি।

Nginx স্থিতি

নিম্নলিখিত কমান্ডটি Nginx এর স্থিতি প্রদান করে:

$ sudo systemctl অবস্থা nginx

Nginx থামানো

নিম্নলিখিত কমান্ড Nginx বন্ধ করে:

$ sudo systemctl stop 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 ব্লক

Apache এর ভার্চুয়াল হোস্টের মতো, Nginx একটি একক সার্ভারে একাধিক হোস্ট সমর্থন করে।

এখানে একটি ডামি কনফিগারেশন যা দুটি ভার্চুয়াল সার্ভার পরিচালনা করে ( উৎস ):

http {

সূচক সূচক। html ;

সার্ভার {

সার্ভার_নাম www. ডোমেইন1 . সঙ্গে ;

অ্যাক্সেস_লগ লগ / ডোমেইন1 অ্যাক্সেস . লগ প্রধান ;

মূল / ছিল / www / ডোমেইন1 সঙ্গে / htdocs ;

}

সার্ভার {

সার্ভার_নাম www. ডোমেইন2 . সঙ্গে ;

অ্যাক্সেস_লগ লগ / ডোমেইন2। অ্যাক্সেস . লগ প্রধান ;

মূল / ছিল / www / ডোমেইন2। সঙ্গে / htdocs ;

}

}

ফাইলটিতে কনফিগারেশন ফাইলের মধ্যে একাধিক ব্লক রয়েছে, প্রতিটিতে বিভিন্ন বৈশিষ্ট্য বর্ণনা করা হয়েছে। সবচেয়ে গুরুত্বপূর্ণ ব্লক হল সার্ভার এবং অবস্থান ব্লক:

  • সার্ভার : এটি একটি নির্দিষ্ট ধরনের ক্লায়েন্ট অনুরোধ পরিচালনা করার জন্য একটি ভার্চুয়াল সার্ভার বর্ণনা করে। একাধিক ভার্চুয়াল সার্ভারের জন্য একাধিক সার্ভার ব্লক থাকতে পারে। অনুরোধ করা ডোমেন নাম, আইপি ঠিকানা এবং পোর্টের উপর ভিত্তি করে ইনকামিং সংযোগগুলি বিভিন্ন সার্ভার ব্লকে পুনঃনির্দেশিত হয়।
  • অবস্থান : এটি সার্ভার ব্লকের মধ্যে একটি সাব-ব্লক। এটি বর্ণনা করে কিভাবে 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 এর বিশ্বব্যাপী আচরণ পরিচালনা করে।

উপসংহার

আমরা ডেবিয়ানে Nginx ইনস্টল করার বিভিন্ন উপায় প্রদর্শন করেছি। সিস্টেমড ব্যবহার করে Nginx প্রক্রিয়াগুলি কীভাবে পরিচালনা করা যায় তা আমরা সংক্ষেপে আলোচনা করেছি। উপরন্তু, আমরা সংক্ষিপ্তভাবে Nginx ব্লকগুলি এবং একাধিক ভার্চুয়াল হোস্ট পরিবেশন করার জন্য Nginx কীভাবে কনফিগার করা যেতে পারে তা স্পর্শ করেছি।

Nginx সম্পর্কে আরও জানতে আগ্রহী? চেক আউট Nginx উপ-শ্রেণী .