حتما تا به حال این سوال برایتان پیش آمده که چگونه روی سرور خود یک وبسایت داشته باشیم. بله با کمک ، انجین ایکس (Engine X) یا همان Nginx یک وب سرور و یک سرور پروکسی معکوس (reverse proxy) است. این نرمافزار به منظور ارائه خدمات وب و مدیریت ترافیک وبسایتها طراحی شده است. انجین ایکس با هدف افزایش کارایی و سرعت ارائه خدمات وب به کار میرود و معمولاً در پروژههایی با بار ترافیک بالا و نیاز به عملکرد بالا استفاده میشود.
انجین ایکس چیست ؟
انجین ایکس وب سروری متن باز و رایگان است که کاملا رایگان می باشد، ایده ی ساخت و گسترش آن در سال ۲۰۰۲ توسط شخصی به نام igor sysoev گسترش گرفت و در سال ۲۰۰۴ و برای نخستین بار یک نسخه از آن در سطح اینترنت قرار گرفت هم اکنون سایت های بسیاری از وب سرور انجین ایکس استفاده میکنند زیرا سرعت این وب سرور بسیار بالا میباشد و کاملا برای وبسایت ها بهینه می باشد و با توجه به وب سرور های رایگان دیگر نیاز به منابع بسیار پایینی دارد و در ضعیف ترین سرور ها و سیستم ها قابل نصب می باشد.
وب سرور انجین ایکس به طور پیشفرض دارای ماژول fastCGI و proxy_pass میباشد که به راحتی میتوانید اسکریپت های تحت وب خود را در آن لود کنید، برای استفاده از وب سرور انجین ایکس معمولا از سرور های لینوکسی استفاده می کنند.
از دلایل معروف بودن nginx میتوان پایدار بودن و کارایی بالای آن را نام برد.
قابلیت های nginx
- پشتیبانی از OCSP
- بازنویسی آدرس یا همان url rewrite
- پشتیبانی از TLS/SSL
- پشتیبانی از پروتکل SPDY
- فشرده سازی و استخراج gzip
- پشتیبانی از uWSGI, SCGI, FASTCGI به همراه Caching
- سازگاری با آیپی های ورژن ۶ یا همان ipv6
چگونه در سرور اوبونتو وب سرور NGINX را نصب کنیم ؟
ابتدا باید مخازن سرور خود را به روز کنیم برای انجام از دستور زیر استفاده کنید:
sudo apt update ; sudo apt upgrade
سپس وب سرور انجین ایکس را با دستور زیر نصب میکنیم:
sudo apt install nginx
پس از نصب یک دایرکتوری در مسیر /etc/nginx برای شما ایجاد می شود که کانفیگ کلی این وب سرور در همین دایرکتوری انجام می شود.
بعد از اتمام مراحل نصب وب سرور باید به پیکربندی بپردازیم.
ابتدا فایل default را حذف میکنیم برای حذف فایل های default از دستور زیر استفاده کنید:
cd /etc/nginx ; rm -rf sites-available/default ; rm -rf sites-enabled/default
سپس به دایرکتوری /etc/nginx/conf.d رفته و یک فایل با نام دلخواه خود ایجاد میکنیم دقت داشته باشید که فرمت فایل حتما باید conf. باشد !
حال پس از ساخت فایل به توجه به سرویسی که نیازمند هستیم پیکربندی خود را انجام میدهیم که در این آموزش با پیکربندی proxy_pass در این وب سرور با شما همراه هستیم.
برای پیکربندی proxy_pass از سورس کد پایین میتوانید استفاده کنید:
server { listen 80; listen [::]:80; server_name azardata.net www.azardata.net; location / { proxy_pass http://127.0.0.1:8000/; proxy_redirect off; proxy_set_header Host $host; } }
پس از اتمام پیکربندی باید وب سرور را ریستارت کنیم برای ریستارت کردن از دستور زیر استفاده کنید:
service nginx restart
حال فقط باید وب اپلیکیشن خود را روی آدرس ۱۲۷.۰.۰.۱:۸۰۰۰ اجرا کنیم و بعد از باز کردن آیپی آدرس یا آدرس دامنه ی خود میتوانیم وب اپلیکیشن خود را مشاهده کنیم.