- فرض کنید یک وب سایت با وب سرور آپاچی راه اندازی شده است.
- بهتر است در جلوی این وب سایت یک Reverse Proxy قرار بگیرد.
- دلیل این امر را میتوان موارد زیر دانست :
- پیاده سازی لود بالانس : میتوان در کنار عمل reverse proxy به چندین وب سرور اشاره کرد در این صورت در کنار استفاده از مزیتهای reversr proxy میتوان از قابلیت load balancing نیز استفاده نمود.
- بالا رفتن امنیت : از آن جایی که وب سرور در پشت سر reverse proxy قرار میگیرد، تاثیر حملاتی نظیر DDOS کمتر میشود.
- بهبود کارایی : تعدادی از درخواستهای ایستای کاربران توسط reverse proxy پاسخ داده میشود در نتیجه بار روی وب سرور اصلی کاسته میشود. در این حالت کارایی بهبود پیدا میکند.
- مدیریت بهتر لاگها : از آنجایی که تمام درخواستها ابتدا وارد reverse proxy وارد میشود، لذا میتوان تمام لاگها را در همان reverse proxy مشاهده و مانیتور کرد.
- فرض کنید که :
- وب سرور اصلی با آدرس 192.168.134.150 با وب سرور آپاچی در دسترس است.
- سرور reverse proxy با آدرس 192.168.134.149 در دسترس است.
- ابتدا وارد سرور reverse proxy شده و بستهها را بروز رسانی کنید :
# apt-get update ; apt-get -y dist-upgrade
- سپس بستهی nginx را نصب کنید :
# apt-get -y install nginx
- پروندهی زیر را ایجاد و آن را با یک ویرایشگر باز کنید :
# touch /etc/nginx/site-available/reverse_proxy.conf
- محتویات زیر را برای پروندهی بالا در نظر بگیرید :
server {
listen 80;
access_log /var/log/nginx/reverse-access.log;
error_log /var/log/nginx/reverse-error.log;
location / {
proxy_pass http://192.168.134.150;
}
}
- عدد 80 در متن بالا اشاره به این دارد که reverse proxy بر روی چه پورتی خدمات ارایه دهد.
- در صورتی که پورت وب سرور آپاچی چیزی جز 80 بود (مثلا 8080) آن را به شکل زیر وارد کنید :
...
proxy_pass http://192.168.134.150:8080;
...
- در نهایت یک بار سرویس nginx را راه اندازی مجدد کنید :
# systemctl restart nginx
- تست شده بر روی ubuntu 18.04
- مطالعهی بیشتر در اینجا | PDF