Skip to content
VDS · শুরু করা

কুইক স্টার্ট: ১৫ মিনিটে একটি ওয়েবসাইট

একটি পরিষ্কার মেশিন থেকে HTTPS সার্টিফিকেটসহ কার্যকর nginx সাইট পর্যন্ত: ইনস্টলেশন, সাইট ডিরেক্টরি, ডোমেইন, ফায়ারওয়াল, এবং যাচাই।

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

পরিস্থিতি: একটি নতুন Debian বা Ubuntu ইনস্টল, আপনার নিজের ডোমেইন, এবং লক্ষ্য হলো HTTPS-এ আপনার পেজ দেখা। সব কমান্ড SSH-এর মাধ্যমে root হিসেবে চালানো হয়।

1. nginx ইনস্টল করুন

apt update && apt install -y nginx
systemctl enable --now nginx

আপনার ব্রাউজারে http://your-address খুলুন — একটি স্বাগত পেজ দেখা উচিত। যদি না দেখা যায়, ফায়ারওয়াল পরীক্ষা করুন (ধাপ 3)।

AlmaLinux-এ, apt-এর বদলে dnf ব্যবহার করুন; দেখুন AlmaLinux।

2. ডোমেইন পয়েন্ট করুন

আপনার রেজিস্ট্রারের প্যানেলে, “Overview” ট্যাব থেকে মেশিনের অ্যাড্রেস দিয়ে একটি A রেকর্ড যোগ করুন:

example.com.      A     203.0.113.10
www.example.com.  A     203.0.113.10

ডোমেইনটি সঠিক অ্যাড্রেসে রিজলভ হচ্ছে কিনা পরীক্ষা করুন:

apt install -y dnsutils
dig +short example.com

রেকর্ড আপডেট হতে এক মিনিট থেকে কয়েক ঘণ্টা লাগতে পারে। যতক্ষণ dig পুরোনো অ্যাড্রেস ফেরত দেয়, ততক্ষণ আপনি সার্টিফিকেট ইস্যু করতে পারবেন না।

3. পোর্ট খুলুন

apt install -y ufw
ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

প্রথমে allow OpenSSH, তারপর enable। উল্টো ক্রমে করলে আপনার অ্যাক্সেস কেটে যাবে, এবং আপনাকে text console দিয়ে লগইন করতে হবে।

4. একটি সাইট তৈরি করুন

mkdir -p /var/www/example.com
echo '<h1>Works</h1>' > /var/www/example.com/index.html
chown -R www-data:www-data /var/www/example.com

/etc/nginx/sites-available/example.com-এ কনফিগারেশন:

server {
    listen 80;
    server_name example.com www.example.com;
    root /var/www/example.com;
    index index.html;

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

এনেবল করুন এবং প্রয়োগ করুন:

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

nginx -t বাধ্যতামূলক: এটি রিস্টার্টের আগে কনফিগ পরীক্ষা করে। যদি আউটপুট syntax is ok এবং test is successful দিয়ে শেষ না হয়, তাহলে সার্ভিস রিস্টার্ট করবেন না — প্রথমে ত্রুটি ঠিক করুন।

5. একটি সার্টিফিকেট ইস্যু করুন

apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com

Certbot একটি ইমেইল চাইবে, একটি listen 443 ssl ব্লক যোগ করবে, এবং একটি HTTP রিডাইরেক্ট সেট আপ করবে। রিনিউয়াল স্বয়ংক্রিয়ভাবে সেট আপ হয়; আপনি এভাবে পরীক্ষা করতে পারেন:

certbot renew --dry-run

সবচেয়ে বেশি যা ভুল হয়

লক্ষণকারণ
ব্রাউজার সাইট খোলে নাufw-তে পোর্ট 80 বা 443 বন্ধ
Certbot: Timeout during connectডোমেইন এখনও মেশিনে পয়েন্ট করছে না, বা পোর্ট 80 বন্ধ
502 Bad Gatewaynginx এমন একটি অ্যাপ্লিকেশনে প্রক্সি করছে যা চলছে না — আপনার সার্ভিসের জন্য systemctl status পরীক্ষা করুন
403 Forbiddenডিরেক্টরিতে অনুমতি নেই, বা index.html অনুপস্থিত
আপনার পেজের বদলে ডিফল্ট nginx পেজ/etc/nginx/sites-enabled/default সরানো হয়নি

এই যেকোনো সমস্যার লগ:

tail -n 50 /var/log/nginx/error.log
journalctl -u nginx -n 50 --no-pager

এরপর, আপনি যদি এখনও না করে থাকেন, তাহলে first-hour checklist ব্যবহার করে প্রাথমিক নিরাপত্তার ব্যবস্থা নেওয়া উচিত।