Cara Menyiapkan Apache Proxy Reverse untuk Node.aplikasi js

Cara Menyiapkan Apache Proxy Reverse untuk Node.aplikasi js

Sekiranya nod anda.Aplikasi JS dijalankan pada pelayan yang boleh diakses ke Internet, anda perlu menyediakan proksi terbalik supaya pengguna luaran dapat mengakses aplikasi anda melalui URL, seperti https: // contoh.com. Walaupun nod anda.Aplikasi JS sedang berjalan di rangkaian peribadi dan hanya boleh diakses oleh pengguna dalaman, menyediakan proksi terbalik Apache akan memudahkan anda untuk meningkatkan aplikasi anda pada masa akan datang dengan membolehkan anda menambah pelayan baru tanpa mengubah semua URL yang ada. Dalam catatan blog ini, kami akan membincangkan bagaimana anda boleh menyediakan proksi terbalik Apache untuk nod anda.Aplikasi JS menggunakan pelayan web Apache dan mari menyulitkan sijil TLS bersama dengan konfigurasi lain yang berkaitan.

Proksi terbalik adalah pelayan perantara yang membolehkan pelanggan mencapai kandungan yang dihoskan di pelayan lain dengan lebih cekap dan selamat. Ia biasanya digunakan dengan laman web tetapi boleh digunakan dengan apa -apa jenis titik akhir rangkaian yang memerlukan sambungan masuk dinamik dari pelbagai sumber.

Sebelum memulakan

  • Saya menggunakan ubuntu 22.04 Sistem Linux Berjalan di VirtualBox. Anda juga boleh membeli contoh VPS dari DigitalOcean dengan harga yang rendah.
  • Dipasang nod terkini.Versi JS menggunakan tutorial ini pada mesin Linux ini.

Langkah 1 - Buat aplikasi nod sampel

Seperti yang anda ada di sini 🙂 anda mesti mempunyai nod yang berjalan.Permohonan JS di beberapa pelabuhan. Kami menganggap anda menjalankan aplikasi anda di port 3000. Untuk tujuan demonstrasi, saya membuat aplikasi web sampel pada nod.js dan berjalan di port 3000. Oleh itu, lebih mudah difahami untuk anda.

Nano MyApp.js  

Kemudian, tambahkan kandungan berikut dalam fail JavaScript.

var http = memerlukan ('http'); http.createServer (fungsi (req, res) res).WriteHead (200, 'Content-type': 'Text/Plain'); res.akhir ('hello tecadmin'); ).Dengar (3000, "127.0.0.1 "); konsol.log ('Pelayan berjalan di http: // 127.0.0.1: 3000/'); 

Aplikasi nod anda siap untuk berkhidmat di port 3000. Mari mulakan nod.Aplikasi JS di latar belakang.

Node MyApp.js &  

Dan mengaksesnya di penyemak imbas. Anda akan melihat hasilnya di bawah:

Mengakses aplikasi nod di port

Langkah 2 - Memasang Apache

Sekarang pasang pelayan web Apache menggunakan pengurus pakej lalai. Sistem berasaskan Ubuntu dan Debian menggunakan APT, Fedora dan Centos/RHEL 8 menggunakan DNF, dan Centos/RHEL 7/6 Gunakan YUM. Pakej Apache boleh didapati di bawah repositori lalai di hampir sistem operasi.

sudo apt memasang apache2 ### sistem berasaskan debian  SUDO DNF Pasang HTTPD ### fedora & centos 8  

Selepas pemasangan pelayan web Apache, anda mesti mengaktifkan modul proksi. Modul ini didayakan di Apache untuk pengguna yang dipasang menggunakan pakej RPM. Sekiranya anda tidak membolehkan mengedit konfigurasi Apache anda /etc/httpd/conf/httpd.Conf atau untuk apache 2.4 /etc/httpd/conf.modul.D/00-Proxy.Conf fail dan uncomment baris berikut atau masukkannya ke dalam fail.

LoadModule Proxy_module modul/mod_proxy.jadi loadmodule proxy_http_module modul/mod_proxy_http.Jadi 

Untuk sistem berasaskan Debian menggunakan arahan berikut untuk membolehkan modul proksi dengan Apache.

sudo a2enmod proxy proxy_http  

Langkah 3 - Konfigurasikan VirtualHost di Apache

Seperti yang anda telah mengkonfigurasi dan menjalankan nod.JS Demo Server. Sekarang, mulakan konfigurasi dengan pelayan web Apache. Buat fail konfigurasi hos maya untuk domain anda di bawah /etc/apache2/tapak yang tersedia/ direktori.

 ### Sistem berasaskan Debian  sudo nano/etc/apache2/sites-tersedia/contoh.com.Conf  ### sistem berasaskan redhat  sudo vim/etc/httpd/conf.d/contoh.com.Conf  

Tambahkan kandungan berikut.

Contoh ServerName.com serveralias www.Contoh.COM ServerAdmin [email protected] proxypreservehost pada proxypass/http: // localhost: 3000/proxypassreverse/http: // localhost: 3000/errorlog/var/log/apache2/ralat.log customlog/var/log/apache2/akses.log digabungkan
123456789101112 Contoh ServerName.com serveralias www.Contoh.COM ServerAdmin [email protected] proxypreservehost pada proxypass/http: // localhost: 3000/proxypassreverse/http: // localhost: 3000/errorlog/var/log/apache2/ralat.log customlog/var/log/apache2/akses.log digabungkan

Simpan fail dan tutupnya.

Setelah membuat konfigurasi, mulakan semula webserver Apache menggunakan arahan berikut.

### Sistem berasaskan Debian  contoh sudo a2ensite.com  SURDO SYSTEMCTL Mulakan semula Apache2  ### sistem berasaskan redhat  SUDO Systemctl Mulakan semula httpd  

Langkah 4 - Sahkan persediaan

Pelayan Proksi Reverse Apache dikonfigurasi untuk menerima permintaan untuk menghantarnya ke aplikasi nod backend. Sekarang, akses nama domain anda dalam penyemak imbas. Sekiranya semuanya dikonfigurasi dengan betul, anda harus melihat aplikasi nod.

Mengakses Aplikasi Nod melalui Apache Proxy Reverse

Kesimpulan

Dalam catatan blog ini, kami membincangkan mengapa anda perlu menyediakan proksi terbalik dan bagaimana anda boleh menyediakan proksi terbalik Apache untuk nod anda.Permohonan JS. Kami juga membincangkan mengapa penting untuk mengkonfigurasi nginx sedemikian rupa dan bagaimana anda boleh melakukannya. Sekarang anda tahu bagaimana menyediakan proksi terbalik Apache untuk nod anda.Permohonan JS, anda boleh yakin bahawa permohonan anda dapat diakses oleh sesiapa sahaja yang ingin mengaksesnya. Sebagai alternatif, nginx mempunyai prestasi yang lebih baik sebagai pelayan proksi, jadi jika anda tidak dibatasi dengan Apache, pergi dengan pelayan proksi nginx.