نصب و تنظیم Nginx روی اوبونتو + ویدیو
سرور Nginx یک وب سرور پرکاربرد است که برای ارائه خدمات وب با کارایی بالا بهخصوص برای ایجاد سایتها و برنامههای تحت وب استفاده میشود. این مقاله به شما نحوه نصب و پیکربندی Nginx روی سیستم عامل اوبونتو را آموزش میدهد.
معرفی Nginx
در دهه گذشته، با توسعه روزافزون تکنولوژی اطلاعات و نیاز رو به افزایش به ارائه خدمات وب با کارایی بالا، وب سرورها به عنوان ابزارهای اساسی برای میزبانی وبسایتها و اپلیکیشنهای تحت وب مورد توجه قرار گرفتهاند. در این محیط رقابتی، Nginx به عنوان یک وب سرور و پروکسی به شدت مورد توجه قرار گرفته است.
Nginx که ابتدا در سال 2004 توسط Igor Sysoev ابداع شد، به سرعت به یکی از وب سرورها و پروکسیهای محبوب در دنیای توسعه وب تبدیل شد. از جمله اهداف اصلی این وب سرور میتوان به افزایش کارایی، مقیاسپذیری، و پایداری اشاره کرد. برخی از بزرگترین وبسایتهای جهان، از جمله Netflix، Airbnb، و WordPress از Nginx به عنوان ابزار اصلی خود برای مدیریت ترافیک بالا و ارائه خدمات به کاربران استفاده میکنند.
تفاوت با آپاچی
یکی از نقاط قوت Nginx در مقابل آپاچی، مدل هدایت و پردازش درخواستهاست. در حالی که آپاچی از مدل Multi-Process استفاده میکند و به هر درخواست یک فرآیند جدید اختصاص میدهد، Nginx از مدل Event-Driven یا Asynchronous استفاده میکند. این مدل بهینهسازی شده به عنوان یک جواب به بارهای بالا عمل کرده و مصرف حافظه را به حداقل میرساند.
قابلیتهای کلیدی Nginx
- مدیریت موازی و اتصال مداوم: یکی از ویژگیهای برجسته Nginx، مدیریت همزمان اتصالها با تعداد بالاست. این ویژگی به وب سرور امکان ارائه خدمات به تعداد زیادی کاربر همزمان را ممکن میسازد و از مقیاسپذیری بالایی برخوردار است.
- پروکسی و توزیع بار: Nginx به عنوان یک پروکسی توزیع بار نیز شناخته میشود. این به معنای توزیع درخواستها به چندین سرور برای افزایش عملکرد و اطمینان از کارایی است.
- SSL/TLS Offloading: امکان Offloading SSL/TLS را دارد. این به معنای انتقال بارهای مربوط به رمزنگاری و رمزگشایی SSL/TLS از سمت وب سرور به Nginx است و در نهایت بهینهسازی کارایی سیستم.
- قابلیتهای 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 باید نمایش داده شود.
فایل مرتبط با تنظیمات 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 را بر روی سیستم عامل اوبونتو نصب و پیکربندی کردهاید. از این پس، میتوانید به پیکربندی و ایجاد وبسایتهای خود بپردازید. برای اطمینان از موفقیت نصب، میتوانید یک صفحه index.html
در مسیر /var/www/html
ایجاد کرده و محتوای موردنظر خود را در آن قرار دهید. این صفحه بهجای صفحه خوشآمدگوی Nginx نمایش داده خواهد شد.