CH-J Server ManagerSSH-এর মাধ্যমে সার্ভার ব্যবস্থাপনা
মেনু
সব নির্দেশিকা ও নিবন্ধ →

ওয়েবসাইট বন্ধ না করে NGINX পরিচালনা

কনফিগারেশনের ব্যাকআপ নিন, nginx -t দিয়ে পরীক্ষা করুন, সংযোগ অক্ষুণ্ণ রেখে রিলোড করে প্রয়োগ করুন এবং ব্যর্থ হলে আগের অবস্থায় ফিরুন।

রিস্টার্টের বদলে রিলোড করুন

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

যে ফাইল বদলাবেন তার ব্যাকআপ নিন

সম্পাদনার আগে ফাইলের পাশেই একটি কপি তৈরি করুন, যার নামে তারিখ থাকবে। NGINX যে ডিরেক্টরি conf.d/*.conf বা sites-enabled/*-এর মতো ওয়াইল্ডকার্ড প্যাটার্ন দিয়ে লোড করে, সেখানে কপি রাখবেন না, কারণ সেগুলোও লোড হয়ে যাবে। Debian ও Ubuntu-তে sites-available-এর ফাইল সম্পাদনা করুন; sites-enabled-এর এন্ট্রি সাধারণত শুধু ওই ফাইলের লিংক।

sudo cp -a /etc/nginx/sites-available/example.conf /root/example.conf.$(date +%Y%m%d-%H%M%S)

আগে পরীক্ষা করুন, তারপর রিলোড

nginx -t সিনট্যাক্স এবং কনফিগারেশনে উল্লেখ করা ফাইল, যেমন সার্টিফিকেট, পরীক্ষা করে। অন্তর্ভুক্ত ফাইলগুলোসহ সম্পূর্ণ কনফিগারেশন দেখতে nginx -T ব্যবহার করুন। পরীক্ষা সফল হলেই রিলোড করুন; কমান্ডগুলো && দিয়ে যুক্ত করলে এই শর্ত বজায় থাকে। কনফিগারেশন আপনার উদ্দেশ্য অনুযায়ী কাজ করছে কি না এই পরীক্ষা তা বলতে পারে না, তাই পরে ওয়েবসাইট খুলে দেখুন।

sudo nginx -t && sudo systemctl reload nginx
sudo nginx -T | less
curl -I https://example.com/

কোনো সমস্যা দেখা দিলে

ব্যাকআপ কপি ফিরিয়ে আনুন, আবার পরীক্ষা করুন এবং রিলোড করুন। সার্ভিস বন্ধ হয়ে গেলে ত্রুটির লগ ও জার্নাল থেকে কারণ জানা যায়। আগে থেকেই ব্যবহৃত পোর্ট, অনুপস্থিত সার্টিফিকেট বা একই সার্ভার নাম একাধিকবার থাকার বার্তা খুঁজুন।

sudo cp -a /root/example.conf.20261031-120000 /etc/nginx/sites-available/example.conf
sudo nginx -t && sudo systemctl reload nginx
sudo journalctl -u nginx -n 50 --no-pager
sudo tail -n 50 /var/log/nginx/error.log

রিলোডে যেসব বিষয়ের সমাধান হয় না

WebSockets-এর মতো দীর্ঘস্থায়ী সংযোগ শেষ না হওয়া পর্যন্ত পুরোনো ওয়ার্কারের সঙ্গেই থাকে, তাই পুরোনো ওয়ার্কার কিছুক্ষণ চলতে পারে এবং অতিরিক্ত মেমরি ব্যবহার করতে পারে। প্যাকেজ আপগ্রেড নিজে থেকেই সার্ভিস রিস্টার্ট করতে পারে। বড় পরিবর্তনগুলো আগে টেস্ট সার্ভারে পরীক্ষা করুন, সার্টিফিকেট ও রিডাইরেক্টসহ।

CH-J Server Manager-এ NGINX Manager

NGINX Manager, Linux সার্ভারের পরিচালিত NGINX ডিরেক্টরিতে কনফিগারেশন ফাইল সম্পাদনা করে, প্রতি ফাইলের সীমা 512 KiB। সেভ করার সময় অ্যাপ্লিকেশন .chj-backup- সাফিক্সসহ ব্যাকআপ তৈরি করে, nginx -t চালায় এবং পরীক্ষা সফল হলেই পরিবর্তন রাখে। রিলোডের জন্য আপনার স্পষ্ট সম্মতি প্রয়োজন এবং শুরু হওয়ার আগে আবার পরীক্ষা চলে। sites-enabled-এ সক্রিয় করার সিমলিংক প্রতিস্থাপন করা হয় না; sites-available-এর সংশ্লিষ্ট ফাইল সম্পাদনা করুন।

বিস্তারিত ডকুমেন্টেশন

NGINX: Controlling nginx →

NGINX: Beginner's Guide →

বায়োমেট্রিক আনলক ও নিরাপত্তা →