nginx یک سرور وب منبع باز است که می تواند به عنوان یک پروکسی معکوس نیز عمل کند. این آموزش به شما کمک می کند تا نحوه تنظیم و پیکربندی NGINX را به عنوان پروکسی معکوس یاد بگیرید.
بررسی اجمالی:
Nginx و Apache دو سرور وب منبع باز محبوب هستند که اغلب با PHP استفاده می شوند. یک پروکسی معکوس یا دروازه به عنوان اتصال بین مشتری و سرور عمل می کند. مشتری و سرور اطلاعات را با یکدیگر تبادل می کنند تا به طور مداوم و کارآمد کار کنند. متداول ترین پروکسی های معکوس nginx و apache**هستند و هر دو هنگام میزبانی چندین وب سایت می توانند در همان دستگاه مجازی پیکربندی شوند. یک پروکسی معکوس از سرورهای وب در برابر حملات محافظت می کند و اتصال دروازه به نظر می رسد مانند یک سرور وب معمولی که در آن به تنظیمات ویژه پروکسی معکوس NGINX نیاز نیست. مشتری درخواست را ارسال می کند در حالی که پروکسی معکوس تصمیم می گیرد که اطلاعات درخواست شده را از کجا منتقل کند و سپس نتیجه خروجی نهایی را به مشتری تحویل دهد. پس از قدردانی از سریال های ما در مورد آموزش های Redis ، ما درخواست های زیادی برای شروع یک سری در آموزش های Nginx دریافت کردیم. بنابراین هفته گذشته ما با یک آموزش در مورد نحوه استفاده از تعادل بار پروکسی معکوس NGINX برای برنامه های شما شروع کردیم. این مثال پیکربندی Proxy Proxy Proxy Simple NGINX بسیاری از قابلیت اطمینان و مزایای عملکرد پروکسی معکوس NGINX را ارائه می دهد. Proxy معکوس ساده NGINX فعال ترین سرور پروکسی منبع باز NGINX در اینترنت است. در این آموزش ، ما نحوه استفاده از NGINX را به عنوان پروکسی معکوس و نحوه تنظیم آن به عنوان پروکسی معکوس بر روی یک سرور واحد پیکربندی و کشف خواهیم کرد. بنابراین ، بیایید شروع کنیم!
- یک پروکسی سرور چیست؟
- پروکسی به جلو در مقابل معکوس
- پروکسی معکوس را پیکربندی کنید
- مزایای پروکسی معکوس nginx چیست؟
- نتیجه
یک پروکسی سرور چیست؟
یک سرور پروکسی به عنوان دروازه ای بین شما و اینترنت عمل می کند. این یک سرور واسطه است که کاربران نهایی را از وب سایت هایی که مرور می کنند جدا می کند. سرورهای پروکسی مطابق با مورد استفاده شما یا خط مشی شرکت ، سطوح مختلف عملکرد ، امنیت و حریم خصوصی را ارائه می دهند. با داشتن یک سرور پروکسی ، ترافیک اینترنت از طریق سرور پروکسی در مسیر خود به آدرس مورد درخواست شما جریان می یابد. درخواست سپس از طریق همان سرور پروکسی (بیشتر) باز می گردد ، و سپس سرور پروکسی داده های دریافت شده از وب سایت را به شما منتقل می کند.
رو به جلو در مقابل پروکسی معکوس:
به طور کلی وقتی از پروکسی صحبت می کنیم ، بیشتر اوقات منظور ما از پروکسی رو به جلو است. پروکسی های رو به جلو برای جلوگیری از محدودیت های کشور مانند فایروال بزرگ چین عالی هستند. مشتری به سادگی از طریق پروکسی رو به جلو به منابع مسدود شده متصل می شود. پروکسی های رو به جلو می توانند هویت کاربر را با تغییر آدرس IP خود پنهان کنند. بنابراین ، اساساً nginx به عنوان پروکسی رو به جلو بین مشتری و اینترنت قرار دارد ، بنابراین سرور نهایی از مشتری واقعی آگاه نیست.
پروکسی های معکوسهمچنین به عنوان واسطه عمل می کنند اما در آن طرف اتصال می نشینند. پروکسی های معکوس در** تعادل بار**، بهینه سازی وب و امنیت بسیار عالی هستند. از مجاورت معکوس به طور معمول برای توزیع بار در بین چندین سرور استفاده می شود ، یکپارچه محتوای وب سایت های مختلف را نشان می دهد ، یا درخواست های پردازش را به سرورهای برنامه از طریق پروتکل های غیر از HTTP منتقل می کند.
NGINX را به عنوان پروکسی معکوس پیکربندی کنید:
هنگامی که nginx یک درخواست را پروکسی می کند ، درخواست را به یک سرور پراکنده مشخص ارسال می کند ، پاسخ را واکشی می کند و آن را به مشتری ارسال می کند. با استفاده از یک پروتکل مشخص ، می توان درخواست های پروکسی را به یک سرور HTTP یا یک سرور غیر HTTP ارائه داد. پروتکل های پشتیبانی شده شامل FASTCGI ، UWSGI ، SCGI و MEMCACHED هستند. برای ارسال درخواست به یک سرور Proxied HTTP ، دستورالعمل proxy_pass در داخل یک مکان****مشخص شده است. مثلا:
location /path/to/location/ {
proxy_pass http://www.backendserver.com/link/;
}
این پیکربندی نمونه پروکسی معکوس NGINX در ارسال کلیه درخواست های پردازش شده در این مکان به سرور پروکسی شده در آدرس مشخص شده است. این آدرس را می توان به عنوان نام دامنه یا یک آدرس IP مشخص کرد. این آدرس همچنین ممکن است شامل یک درگاه باشد:
location ~ \.php {
proxy_pass http://127.0.0.1:8000;
}
شما حتی می توانید عنوان های اصلاح شده یا سفارشی را به سرور Proxied در NGINX پروکسی \ _set \ _header میزبان زیر در مثال منتقل کنید.
location /path/to/location/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://localhost:8000;
}
NGINX همچنین از بافر پشتیبانی می کند که به بهبود عملکرد کمک می کند. با استفاده از بافر فعال NGINX تا زمانی که مشتری برای بارگیری به آن نیاز داشته باشد ، پاسخی را که از سرور پروکسی دریافت می کند ، ذخیره می کند. به جای اینکه تمام درخواست ها را به یک سرور واحد ارائه دهید ، می توانید چندین سرور باکد را تنظیم کنید و اجازه دهید تعادل NGINX بین آن سرورهای پروکسی بارگذاری شود. ما قبلاً این موضوع را در آموزش خود در مورد تعادل بار Nginx پوشش داده ایم.
مزایای پروکسی معکوس nginx چیست؟
در زیر مزایای تنظیم سرور پروکسی معکوس NGINX:
- Nginx یکی از محبوب ترین سرورهای وب منبع باز**است که همچنین محبوب ترین ابزار پروکسی است. پیکربندی پروکسی معکوس NGINX برای اجرای بسیار ساده است زیرا امنیت بالایی را در برابر حملات DDOS و سرور DOS در اختیار کاربر قرار می دهد.
- به ایجاد یک بار متعادل در بین وب سایت های ترافیکی بالا و سرورهای باطن مانند Dropbox ، Netflix و Zynga کمک می کند.
- این مکانیزم ذخیره سازی را برای یک سرور عقب مانده و سایت های ترافیکی کندتر برای تنظیم میزبان مجازی پروکسی معکوس NGINX فراهم می کند. نیازی به تنظیم یک فرآیند جدید برای هر درخواست وب از طرف مشتری ندارد.
- همچنین به عنوان یک سرور پروکسی معکوس برای چندین پروتکل مانند HTTP ، HTTPS ، TCP ، UDP ، SMTP ، IMAP و POP3 و غیره عمل می کند.
- nginx می تواند بیش از 10000 اتصال را با یک ردپای حافظه کم کنترل کند و می تواند چندین سرور وب را در یک آدرس IP واحد کار کند.
- همچنین به ذخیره سازی صفحات و انجام رمزگذاری SSL کمک می کند تا بار از سرور میزبان وب کاهش یابد. Nginx یکی از بهترین سرورهای وب برای بهبود عملکرد محتوای استاتیک با فشرده سازی آن و افزایش زمان بارگیری است.
- این یک ابزار عالی برای یک محیط سرور چندگانه است و همچنین می تواند برای کارهای مختلف مانند نگه داشتن یک سرور واحد ناشناس مفید باشد.
نتیجه:
در این آموزش nginx معکوس پروکسی ، ما بررسی کردیم که یک سرور پروکسی nginx چیست و پروکسی معکوس nginx را تنظیم می کند. تفاوت بین سرور پروکسی رو به جلو در مقابل NGINX. ما همچنین به عنوان مثال یاد گرفتیم که چگونه NGINX را به عنوان پروکسی معکوس تنظیم کنیم. اکنون شما کاملاً درک می کنید که چگونه می توانید پیکربندی پروکسی معکوس nginx را به مرحله به مرحله**نصب کنید. آموزش فوق به شما کمک می کند تا با یک پروکسی معکوس شروع کنید. در آموزش های آینده ما ، ما در مورد موضوعات جالب تر درباره Nginx بحث خواهیم کرد. _ مورد علاقه ترین سرور reverse proxy شما که آسان ، پویا و کامل است؟ آیا شما در مورد پیشرو_ _open منبع _reverse prox__y ، بارگذاری کننده بار برای برنامه های http و tcp مبتنی بر برنامه های کاربردی دارید.
کاوش کنید
ممکن است مقالات زیر را در زیر بیابید
- نحوه پیکربندی آپاچی به عنوان یک پروکسی معکوس برای اوبونتو/دبیان
- Secure nginx با اجازه رمزگذاری در اوبونتو 20.04
- نحوه استفاده از NGINX به عنوان بالانسر بار برای برنامه خود
- نحوه نصب و ایمن phpmyadmin با nginx در اوبونتو
- پیکربندی پشتیبانی HTTP/2 در Nginx در اوبونتو/دبیان
- چندین نسخه PHP را با nginx در اوبونتو نصب کنید
- Setup nginx با مسافر در سرور تولید AWS