Cara mengkonfigurasi Apache sebagai proksi terbalik

Cara mengkonfigurasi Apache sebagai proksi terbalik

Pelayan Proksi Reverse adalah pelayan web yang menerima permintaan klien dan mengarahkannya ke pelayan backend yang sesuai. Dalam hal ini, proksi terbalik adalah pelayan yang dihadapi Internet, dan aplikasi backend berjalan di localhost atau rangkaian LAN.

Apache adalah pelayan web paling popular yang juga boleh dikonfigurasikan sebagai pelayan proksi terbalik. Dalam tutorial ini, anda akan belajar tentang mengkonfigurasi pelayan proksi terbalik Apache pada sistem Linux.

Senario Nework

Kami mempunyai dua aplikasi yang berjalan dengan pelayan Tomcat di port localhost 8080. Tidak kira sama ada aplikasi berjalan dengan Tomcat atau mana -mana perkhidmatan lain seperti nodejs dll. Kedua -dua URL aplikasi tempatan adalah:

  • http: // localhost: 8080/demo1
  • http: // localhost: 8080/demo2

Sekarang saya telah memasang pelayan Apache pada hos yang sama berjalan di port 80. Pelayan Apache menerima permintaan dari pengguna Internet dan meneruskannya ke aplikasi yang sepadan yang berjalan di hujung belakang. Kita perlu mengkonfigurasi proksi untuk mengemukakan permintaan seperti berikut:

  • http: // contoh.com >> http: // localhost: 8080/demo1/
  • http: // contoh.bersih >> http: // localhost: 8080/demo2/
  • http: // domain.com/demo1/>> http: // localhost: 8080/demo1/
  • http: // domain.com/demo2/>> http: // localhost: 8080/demo2/

Untuk mendapatkan pemahaman yang lebih baik lihat rajah di bawah:

Oleh itu, mari kita mulakan konfigurasi:

Langkah 1: Persediaan Modul Proksi Apache

Secara lalai, modul ini didayakan di Apache untuk pengguna yang dipasang menggunakan pakej RPM. Pengguna berasaskan Debian perlu membolehkan modul secara manual.

  • Sistem berasaskan Redhat: Edit fail konfigurasi proksi /etc/httpd/conf.modul.D/00-Proxy.Conf Uncomment entri berikut. Sekiranya tidak tersedia, maka tambahkannya.
    LoadModule Proxy_module modul/mod_proxy.jadi loadmodule proxy_http_module modul/mod_proxy_http.Jadi 
  • Sistem berasaskan Debian: Gunakan arahan berikut untuk membolehkan modul proksi dengan Apache.
    sudo a2enmod proxy proxy_http  

Setelah membolehkan modul, anda perlu memulakan semula perkhidmatan Apache untuk menggunakan perubahan dengan segera.

Langkah 2: Konfigurasikan Host Maya Apache

Sekarang akan mula bekerja dengan tuan rumah maya. Kami mencipta tiga tuan rumah maya seperti di bawah. Anda hanya membuat apa yang diperlukan dengan pengubahsuaian yang diperlukan. Edit fail konfigurasi utama Apache dan mulakan dengan konfigurasi.

  • Contoh tuan rumah maya pertama:
  • Untuk mengemukakan semua permintaan yang dihantar ke contoh.com untuk menyokong aplikasi Tomcat Server yang sepadan seperti:

    • http: // contoh.com >> http: // localhost: 8080/demo1/

    Konfigurasikan hos maya pertama seperti di bawah:

    Contoh ServerName.com proxyrequests pada proxypass/http: // localhost: 8080/demo1/proxypassreverse/http: // localhost: 8080/demo1/
    12345678 Contoh ServerName.com proxyrequests pada proxypass/http: // localhost: 8080/demo1/proxypassreverse/http: // localhost: 8080/demo1/

  • Contoh tuan rumah maya kedua:
  • Untuk mengemukakan semua permintaan yang dihantar ke contoh.Bersih ke Backend Tomcat Server Aplikasi yang sepadan seperti:

    • http: // contoh.bersih >> http: // localhost: 8080/demo2/

    Konfigurasikan tuan rumah maya seperti ini.

    Contoh ServerName.Proxyrequests bersih pada proxypass/http: // localhost: 8080/demo2/proxypassreverse/http: // localhost: 8080/demo2/
    12345678 Contoh ServerName.Proxyrequests bersih pada proxypass/http: // localhost: 8080/demo2/proxypassreverse/http: // localhost: 8080/demo2/

  • Contoh tuan rumah maya ketiga:
  • Untuk mengemukakan semua permintaan yang dihantar ke subdirektori/demo1/atau/demo2 di http: // domain.com ke back-end Tomcat Aplikasi yang sepadan seperti:

    • http: // domain.com/demo1/>> http: // localhost: 8080/demo1/
    • http: // domain.com/demo2/>> http: // localhost: 8080/demo2/

    Konfigurasikan tuan rumah maya seperti ini.

    ServerName Domain.com proxyrequests pada proxypass/demo1 http: // localhost: 8080/demo1/proxypassreverse/demo1 http: // localhost: 8080/demo1/proxypass/Demo2 http: // localhost: 8080/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/ : 8080/ demo2/ dikehendaki diberikan semua yang dikehendaki diberikan semua
    1234567891011121314151617 ServerName Domain.com proxyrequests pada proxypass/demo1 http: // localhost: 8080/demo1/proxypassreverse/demo1 http: // localhost: 8080/demo1/proxypass/Demo2 http: // localhost: 8080/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/DEMO2/ : 8080/demo2/ Diperlukan diberikan semua Diperlukan diberikan semua

Langkah 3: Mulakan semula Apache untuk menerapkan perubahan

Sebaik sahaja anda berjaya mencipta hos maya Apache, anda perlu memulakan semula perkhidmatan Apache. Gunakan arahan berikut untuk memulakan semula perkhidmatan Apache berdasarkan sistem operasi.

  • Sistem berasaskan Redhat:
    SUDO Systemctl Mulakan semula httpd  
  • Sistem berasaskan Debed:
    SURDO SYSTEMCTL Mulakan semula Apache2  

Kesimpulan

Catatan blog ini membantu anda mengkonfigurasi Apache sebagai pelayan proksi terbalik pada sistem berasaskan debian atau redhat. Proksi terbalik menjadikan jambatan antara pelayan web yang menghadap ke internet dan aplikasi web berjalan sebagai perkhidmatan backend.