Linux

نصب و تنظیم Nginx روی اوبونتو + ویدیو

nginx

سرور Nginx یک وب سرور پرکاربرد است که برای ارائه خدمات وب با کارایی بالا به‌خصوص برای ایجاد سایت‌ها و برنامه‌های تحت وب استفاده می‌شود. این مقاله به شما نحوه نصب و پیکربندی Nginx روی سیستم عامل اوبونتو را آموزش می‌دهد.

 معرفی Nginx

در دهه گذشته، با توسعه روزافزون تکنولوژی اطلاعات و نیاز رو به افزایش به ارائه خدمات وب با کارایی بالا، وب سرورها به عنوان ابزارهای اساسی برای میزبانی وب‌سایت‌ها و اپلیکیشن‌های تحت وب مورد توجه قرار گرفته‌اند. در این محیط رقابتی، Nginx به عنوان یک وب سرور و پروکسی به شدت مورد توجه قرار گرفته است.

Nginx که ابتدا در سال 2004 توسط Igor Sysoev ابداع شد، به سرعت به یکی از وب سرورها و پروکسی‌های محبوب در دنیای توسعه وب تبدیل شد. از جمله اهداف اصلی این وب سرور می‌توان به افزایش کارایی، مقیاس‌پذیری، و پایداری اشاره کرد. برخی از بزرگ‌ترین وب‌سایت‌های جهان، از جمله Netflix، Airbnb، و WordPress از Nginx به عنوان ابزار اصلی خود برای مدیریت ترافیک بالا و ارائه خدمات به کاربران استفاده می‌کنند.

تفاوت با آپاچی

یکی از نقاط قوت Nginx در مقابل آپاچی، مدل هدایت و پردازش درخواست‌هاست. در حالی که آپاچی از مدل Multi-Process استفاده می‌کند و به هر درخواست یک فرآیند جدید اختصاص می‌دهد، Nginx از مدل Event-Driven یا Asynchronous استفاده می‌کند. این مدل بهینه‌سازی شده به عنوان یک جواب به بارهای بالا عمل کرده و مصرف حافظه را به حداقل می‌رساند.

قابلیت‌های کلیدی Nginx

  1. مدیریت موازی و اتصال مداوم: یکی از ویژگی‌های برجسته Nginx، مدیریت همزمان اتصال‌ها با تعداد بالاست. این ویژگی به وب سرور امکان ارائه خدمات به تعداد زیادی کاربر همزمان را ممکن می‌سازد و از مقیاس‌پذیری بالایی برخوردار است.
  2. پروکسی و توزیع بار: Nginx به عنوان یک پروکسی توزیع بار نیز شناخته می‌شود. این به معنای توزیع درخواست‌ها به چندین سرور برای افزایش عملکرد و اطمینان از کارایی است.
  3. SSL/TLS Offloading: امکان Offloading SSL/TLS را دارد. این به معنای انتقال بارهای مربوط به رمزنگاری و رمزگشایی SSL/TLS از سمت وب سرور به Nginx است و در نهایت بهینه‌سازی کارایی سیستم.
  4. قابلیت‌های Rewrite و Redirect: ابزارهای قدرتمندی برای تغییر آدرس‌ها (Rewrite) و هدایت (Redirect) دارد که از آنها می‌توان برای بهینه‌سازی ساختار URL و ارجاع‌های مسیر استفاده کرد.

نصب و تنظیم Nginx روی اوبونتو

برای اطمینان از نصب نسخه‌های جدید و به‌روز از نرم‌افزارها، ابتدا سیستم را به‌روز کنید:

sudo apt update
sudo apt upgrade

از طریق دستورات زیر، Nginx را نصب کنید:

sudo apt install nginx

پس از نصب، سرویس Nginx را راه‌اندازی کرده و آن را فعال کنید:

sudo systemctl start nginx
sudo systemctl enable nginx

وضعیت سرویس را بررسی کنید تا اطمینان حاصل شود که Nginx به‌درستی در حال اجرا است:

sudo systemctl status nginx

اگر شما از فایروال UFW استفاده می‌کنید، پورت 80 (برای HTTP) و پورت 443 (برای HTTPS) را با دستورات زیر باز کنید:

sudo ufw allow 80
sudo ufw allow 443

حالا می‌توانید مرورگر وب خود را باز کنید و آدرس IP سرور یا دامنه خود را وارد کنید. صفحه خوش‌آمدگوی Nginx باید نمایش داده شود.

Welcome to nginx

فایل مرتبط با تنظیمات Nginx در دایرکتوری sites-available برای هر سایت باید یک فایل تنظیمات Nginx با پسوند .conf باشد. این فایل توصیف کننده‌ای از تنظیمات سرور شما است. در مثال زیر، نام فایل تنظیمات را test.nextadmin.net در نظر می‌گیریم. به عنوان مثال، محتوای یک فایل تنظیمات Nginx برای test.nextadmin.net در دایرکتوری sites-available ممکن است به صورت زیر باشد:

server {
    listen 80;
    server_name test.nextadmin.net;
    root /var/www/test.nextadmin.net;
    index index.php index.html index.htm;

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

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    error_log  /var/log/nginx/test.nextadmin.net_error.log;
    access_log /var/log/nginx/test.nextadmin.net_access.log;
}

در این تنظیمات:

  • listen 80;: این دستور به Nginx می‌گوید که به درخواست‌ها در پورت ۸۰ (پورت HTTP) گوش کند.
  • server_name test.nextadmin.net;: این دستور نشان می‌دهد که این تنظیمات برای دامنه test.nextadmin.net معتبر است.
  • root /var/www/test.nextadmin.net;: مسیر فیزیکی برای فایل‌ها و دایرکتوری‌های سایت.
  • index index.php index.html index.htm;: ترتیب فایل‌های اصلی درخواست‌ها.
  • قسمت location / {...}: تنظیمات برای فایل‌ها و دایرکتوری‌های عمومی.
  • قسمت location ~ \.php$ {...}: تنظیمات برای فایل‌های PHP.
  • error_log و access_log: مسیر فایل‌های لاگ برای خطاها و دسترسی‌ها.

بعد از تنظیمات، مطمئن شوید که این فایل تنظیمات در دایرکتوری sites-enabled نیز لینک شده باشد تا توسط Nginx لود شود. این لینک می‌تواند به صورت زیر باشد:

sudo ln -s /etc/nginx/sites-available/sec.nextadmin.net /etc/nginx/sites-enabled/

پس از تغییرات، Nginx را با دستور sudo systemctl restart nginx راه‌اندازی مجدد کنید تا تغییرات اعمال شود.

تبریک! شما با موفقیت Nginx را بر روی سیستم عامل اوبونتو نصب و پیکربندی کرده‌اید. از این پس، می‌توانید به پیکربندی و ایجاد وب‌سایت‌های خود بپردازید. برای اطمینان از موفقیت نصب، می‌توانید یک صفحه index.html در مسیر /var/www/html ایجاد کرده و محتوای موردنظر خود را در آن قرار دهید. این صفحه به‌جای صفحه خوش‌آمدگوی Nginx نمایش داده خواهد شد.

ویدیوی آموزش نصب Nginx را بر روی سیستم عامل اوبونتو

Shares:

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *