وبسرور Nginx یکی از پرکاربردترین و قدرتمندترین وبسرورها در جهان است که به دلیل سرعت بالا، مصرف کم منابع و قابلیت مدیریت حجم بالای درخواستها، محبوبیت ویژهای در میان مدیران سرور و توسعهدهندگان دارد. این وبسرور میتواند علاوه بر ارائه فایلهای استاتیک، به عنوان Reverse Proxy، Load Balancer و حتی یک Mail Proxy عمل کند.
در اوبونتو ۲۴.۰۴ نصب و راهاندازی Nginx نسبت به نسخههای قدیمی، سادهتر شده و ابزارهای مدیریتی جدیدی برای کنترل آن در دسترس است. در این مطلب، به صورت آموزشی و گامبهگام نحوه نصب و پیکربندی اولیه وبسرور Nginx در اوبونتو ۲۴.۰۴ را بررسی میکنیم.
پیشنیازها
قبل از نصب، لازم است شرایط زیر روی سرور فراهم باشد:
- سیستمعامل اوبونتو نسخه ۲۴.۰۴
- دسترسی به root یا کاربری با sudo برای اجرای دستورات مدیریتی
- اتصال اینترنت پایدار برای دریافت بستهها
- آشنایی مقدماتی با کار با ترمینال لینوکس
بهروزرسانی مخازن سیستم
همیشه توصیه میشود پیش از نصب هر سرویس جدید، بستههای سیستم را بهروز کنید.
برای این کار دستور زیر را اجرا کنید:
sudo apt update && sudo apt upgrade -y
این دستور هم مخازن را بهروز میکند و هم بستههای قدیمی را به نسخههای جدید ارتقا میدهد.
نصب وبسرور Nginx
برای نصب Nginx کافی است از دستور زیر استفاده کنید:
sudo apt install nginx -y
پس از پایان نصب، سرویس Nginx به طور خودکار راهاندازی میشود. برای اطمینان از فعال بودن آن دستور زیر را وارد کنید:
sudo systemctl status nginx
اگر وضعیت سرویس به شکل active (running) نمایش داده شد، یعنی وبسرور به درستی اجرا شده است.
مدیریت سرویس Nginx
برای کنترل سرویس Nginx میتوانید از دستورات زیر استفاده کنید:
- راهاندازی سرویس:
sudo systemctl start nginx
- توقف سرویس:
sudo systemctl stop nginx
- بارگذاری مجدد تنظیمات بدون توقف کامل سرویس:
sudo systemctl reload nginx
- فعالسازی سرویس در هنگام بوت:
sudo systemctl enable nginx
بررسی اجرای وبسرور
پس از نصب، میتوانید مرورگر خود را باز کنید و آدرس IP سرور یا دامنه خود را وارد کنید. به طور پیشفرض صفحه خوشآمدگویی Nginx نمایش داده میشود که نشاندهنده موفقیت در نصب است.
همچنین میتوانید با دستور زیر صحت عملکرد وبسرور را بررسی کنید:
curl -I https://localhost
این دستور هدرهای HTTP را نمایش میدهد که نشاندهنده پاسخدهی وبسرور است.
تنظیم فایروال (UFW) برای Nginx
اگر روی اوبونتو از فایروال UFW استفاده میکنید، لازم است دسترسی به سرویس Nginx را باز کنید.
ابتدا وضعیت پروفایلهای موجود را بررسی کنید:
sudo ufw app list
خروجی معمولا شامل گزینههای زیر است:
- Nginx Full (شامل HTTP و HTTPS)
- Nginx HTTP (فقط پورت ۸۰)
- Nginx HTTPS (فقط پورت ۴۴۳)
برای فعالسازی دسترسی کامل:
sudo ufw allow 'Nginx Full'
سپس با دستور زیر وضعیت فایروال را بررسی کنید:
sudo ufw status
ساخت و مدیریت هاستهای مجازی (Server Block)
یکی از ویژگیهای مهم Nginx پشتیبانی از هاستهای مجازی است. این امکان به شما اجازه میدهد چندین وبسایت مختلف را روی یک سرور و یک IP اجرا کنید.
مسیر فایلهای پیکربندی در اوبونتو به صورت زیر است:
- فایلهای فعال:
/etc/nginx/sites-enabled/ - فایلهای آماده (غیرفعال):
/etc/nginx/sites-available/
نمونه پیکربندی یک سایت
فرض کنید میخواهید سایتی با دامنه example.com راهاندازی کنید. ابتدا یک فایل پیکربندی جدید ایجاد کنید:
sudo nano /etc/nginx/sites-available/example.com
محتوا:
server { listen 80; server_name example.com www.example.com; root /var/www/example.com/html; index index.html index.htm; location / { try_files $uri $uri/ =404; } }
سپس مسیر دایرکتوری سایت را ایجاد کنید:
sudo mkdir -p /var/www/example.com/html sudo chown -R $USER:$USER /var/www/example.com/html
خرید VPS لینوکس با دسترسی کامل SSH و منابع اختصاصی، مناسب برای برنامهنویسان، توسعهدهندگان و مدیران سایت در پارسدو فراهم است.
یک فایل ساده تست بسازید:
echo "<h1>Welcome to ParsDev on Nginx</h1>" | sudo tee /var/www/example.com/html/index.html</pre> <pre>
اکنون سایت را فعال کنید:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
در نهایت، صحت پیکربندی را بررسی کنید:
sudo nginx -t
و سرویس را ریلود کنید:
sudo systemctl reload nginx
فعالسازی SSL با Let’s Encrypt
برای افزایش امنیت، میتوانید از گواهی رایگان Let’s Encrypt استفاده کنید. کافی است بسته Certbot را نصب کنید:
sudo apt install certbot python3-certbot-nginx -y
و سپس برای دامنه خود گواهی SSL بگیرید:
sudo certbot --nginx -d example.com -d www.example.com
این کار به طور خودکار HTTPS را برای سایت شما فعال میکند.
نکات مهم در مدیریت و بهینهسازی Nginx
- مانیتورینگ لاگها: لاگهای خطا و دسترسی در مسیر /var/log/nginx/ قرار دارند.
- بهینهسازی منابع: در سرورهای با ترافیک بالا میتوانید با تغییر تنظیمات worker_processes و worker_connections عملکرد را بهبود دهید.
- افزایش امنیت: محدودسازی نسخههای قدیمی پروتکل SSL/TLS و استفاده از فایروال ضروری است.
جمعبندی
نصب Nginx در اوبونتو ۲۴.۰۴ فرایندی ساده و کاربردی است. با چند دستور ساده میتوانید این سرویس قدرتمند را راهاندازی کنید و سپس با استفاده از هاستهای مجازی (Virtual hosts)، چندین سایت مختلف را روی یک سرور میزبانی کنید. در ادامه میتوانید با فعالسازی SSL، بهینهسازی پیکربندی و نظارت بر عملکرد، امنیت و پایداری وبسایتهای خود را تضمین کنید.