Skip to content
VDS · ওয়েবসাইট ও ওয়েব সার্ভার

Nginx: ইনস্টলেশন এবং আপনার প্রথম সাইট

Millida VDS-এ Nginx কীভাবে ইনস্টল করবেন, নিজের অ্যাড্রেসে প্রথম পেজ সার্ভ করবেন, এবং টাইপো দিয়ে কনফিগারেশন নষ্ট করা এড়াবেন।

আপডেট: ২৩ আগস্ট, ২০২৬

Nginx হলো সবচেয়ে প্রচলিত ওয়েব সার্ভার: এটি স্ট্যাটিক ফাইল পরিবেশন করে এবং অ্যাপ্লিকেশনগুলোতে রিকোয়েস্ট প্রক্সি করে। যেকোনো VPS টিয়ারে এটি কয়েক ডজন মেগাবাইট মেমরি নেয়, তাই VDS-1-ও যথেষ্ট।

ইনস্টলেশন

SSH-এর মাধ্যমে মেশিনে কানেক্ট করুন (কমান্ডটি প্যানেলের “Overview” ট্যাবে আছে /hosting/vds/m/<id>) এবং প্যাকেজটি ইনস্টল করুন।

apt update && apt install -y nginx      # Debian, Ubuntu
dnf install -y nginx && systemctl enable --now nginx   # AlmaLinux, CentOS Stream

সার্ভিসটি চালু আছে কিনা যাচাই করুন:

systemctl status nginx
curl -I http://127.0.0.1

এখন ব্রাউজারে মেশিনের পাবলিক অ্যাড্রেস খুলুন—এটি “Overview”-তে দেখানো আছে। Nginx-এর ওয়েলকাম পেজ দেখা উচিত।

আপনার প্রথম সাইট

ডিফল্ট ফাইলটি এডিট করবেন না—প্রতিটি সাইটের জন্য আলাদা কনফিগ তৈরি করুন। এতে সেগুলো চালু ও বন্ধ করা সহজ হয়।

mkdir -p /var/www/example.ru
echo '<h1>Works</h1>' > /var/www/example.ru/index.html
chown -R www-data:www-data /var/www/example.ru
server {
    listen 80;
    server_name example.ru www.example.ru;
    root /var/www/example.ru;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}

এটি /etc/nginx/sites-available/example.ru-তে সেভ করুন (AlmaLinux-এ, /etc/nginx/conf.d/example.ru.conf) এবং চালু করুন:

ln -s /etc/nginx/sites-available/example.ru /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx

nginx -t একটি বাধ্যতামূলক ধাপ। এটি রিলোড করার আগে সিনট্যাক্স যাচাই করে; এটি ছাড়া একটি ব্র্যাকেট ভুল একসাথে সব সাইট ডাউন করে দেবে।

ডোমেইন এবং সার্টিফিকেট

ডোমেইনের A রেকর্ডটি “Overview” থেকে মেশিনের অ্যাড্রেসে পয়েন্ট করুন। রেকর্ডটি প্রোপাগেট হওয়ার আগ পর্যন্ত সাইটটি শুধু IP দিয়ে অ্যাক্সেসযোগ্য। রিভার্স রেকর্ড (PTR) “Access” ট্যাবে কনফিগার করা হয়; এটি সাইটের কার্যক্রমে প্রভাব ফেলে না—শুধু ইমেইল রেপুটেশনে।

এরপর একটি ফ্রি সার্টিফিকেট ইনস্টল করুন: Let's Encrypt। এটি ছাড়া ব্রাউজার “Not secure” দেখায়।

সাধারণ ত্রুটি

লক্ষণকারণকী করবেন
403 Forbiddenডিরেক্টরিতে পারমিশন নেই বা index.html নেইchown -R www-data:www-data /var/www/..., index যাচাই করুন
502 Bad Gatewayপ্রক্সির পেছনের অ্যাপ্লিকেশনটি চলছে নাআপনার সার্ভিসের systemctl status, দেখুন রিভার্স প্রক্সি
ভিন্ন একটি সাইট খুলছেরিকোয়েস্টটি কোনো server_name-এর সাথে মেলেনি এবং প্রথম ব্লকে গিয়ে পড়েছেস্পষ্টভাবে server_name সেট করুন, অতিরিক্ত কনফিগ থেকে default_server সরান
পোর্ট 80 ব্যবহৃত হচ্ছেApache ইতিমধ্যে ইনস্টল করা আছেএটি বন্ধ করুন: systemctl disable --now apache2

লগগুলো /var/log/nginx/error.log-এ দেখুন—প্রায় যেকোনো 500 রেসপন্সের কারণ সেখানেই থাকে।

Nginx systemctl reload দিয়ে রিস্টার্ট করুন, restart দিয়ে নয়: reload খোলা কানেকশন না কেটে কনফিগারেশন গ্রহণ করে।