Setup reverse proxy using nginx in linux

  • فرض کنید یک وب سایت با وب سرور آپاچی راه اندازی شده است.
  • بهتر است در جلوی این وب سایت یک 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 شده و بسته‌ها را بروز رسانی کنید :

  • سپس بسته‌ی nginx را نصب کنید :

  • پرونده‌ی زیر را ایجاد و آن را با یک ویرایشگر باز کنید :

  • محتویات زیر را برای پرونده‌ی بالا در نظر بگیرید :

  • عدد 80 در متن بالا اشاره به این دارد که reverse proxy بر روی چه پورتی خدمات ارایه دهد.
  • در صورتی که پورت وب سرور آپاچی چیزی جز 80 بود (مثلا 8080) آن را به شکل زیر وارد کنید :

  • در نهایت یک بار سرویس nginx را راه اندازی مجدد کنید :


  • تست شده بر روی ubuntu 18.04
  • مطالعه‌ی بیشتر در اینجا | PDF