Konfigurasi Nginx sebagai proksi songsang

Dalam proses pembangunan laman statik menggunakan Hugo, ada kalanya kita mahu mengaksesnya melalui domain tempatan seperti https://blog-hugo.loc dan pada masa yang sama menikmati ciri LiveReload secara automatik.

Catatan ini menunjukkan cara:

  • Mengkonfigurasi Nginx sebagai proksi songsang (reverse proxy) untuk pelayan pembangunan Hugo,
  • Mengaktifkan sokongan WebSocket untuk LiveReload,
  • Menjalankan Hugo dengan parameter sesuai agar kena dengan penggunaan proksi HTTPS.

Arch Linux

  
  ---
title: Aliran Trafik daripada Nginx ke 'Backend'
---
flowchart TD
  A(["NGINX<br>(Reverse Proxy)"])
  A --> B{"BACKEND"}
  B --> C["Apache<br>(PHP-FPM)"]
  B --> D["Flask<br>(Gunicorn)"]
  B --> E["Laravel<br>(PHP-FPM)"]

Dalam pembangunan perisian moden, kita jarang bergantung kepada satu teknologi sahaja. Saya sediakan catatan ini bagi memaparkan bagaimana Nginx boleh digunakan sebagai proksi songsang untuk menyatukan pelbagai pelayan latar; Apache, Flask (melalui Gunicorn), dan Laravel (melalui PHP-FPM), dalam satu mesin pembangunan berasaskan Arch Linux.

Sebelum melangkah lebih jauh, pastikan anda telah menyediakan konfigurasi asas seperti yang diterangkan dalam catatan saya terdahulu: Konfigurasi LEMP dalam Arch Linux.

VM Fedora

Saya cuba menyediakan Hadoop dengan kluster nod tunggal (Single Node Cluster) di VM Fedora. Pada hemat saya, mungkin tak akan mampu lagilah untuk saya usahakan penyediaan pengoperasian berdistribusi penuh bersama Kerberos sebagai kaedah pengesahan kerana Hadoop memerlukan sistem yang berprestasi tinggi.

Berdasarkan jawapan yang disediakan oleh platform-platform AI, saya ringkaskan syarat minimum sistem untuk mengehoskan Hadoop dengan kluster nod tunggal, memandangkan perkakasan komputer riba saya hanya mampu menampung sumber berskala kecil:

Pelayan & Klien (sambungan dalaman) dalam VM Fedora

Saya melaburkan masa yang agak lama untuk menghadam kegunaan protokol Kerberos menerusi banyaknya sesi percubaan yang mengecewakan. Setelah menempuh bersiri-siri episod kehampaan, kali ini terbayar juga sekian jumlah sumbangan tenaga yang agak melelahkan itu.

Penjelasan yang tuntas mengenai kaedah pengesahan dengan Kerberos ini boleh diperolehi dari YouTube, Kerberos Authentication Explained | A deep dive.

Sungguh! Prosesnya begitu rumit, sementelah betapa sebelum ini banyak kekeliruan yang saya alami dek kurangnya kemahiran dan kefahaman tentang perbezaan antara domain dan REALM, juga dalam bab menguruskan domain.

Hos & Klien: Arch Linux

Paparan desktop hos (tetingkap sebelah kanan) dari skrin klien melalui vncviewer.

Ditulis semula.

Melalui perbincangan bersama anak-anak, saya jelaskan bahawa ada ketikanya saya akan melihat aktiviti di komputer riba mereka (menggunakan distro Arch Linux) melalui skrin sistem operasi saya (juga distro Arch Linux).

Hal ini juga sesungguhnya menyenangkan apabila saya perlu mengambil alih laptop mereka sebagai “admin” setiap kali diadukan sebarang masalah berkait sistem.

Sebelum ini, saya gunakan DWService untuk memantau dari web browser saya. Selepas merajinkan diri meneroka pakej-pakej server (pelayan) VNC, berhasil jugalah mendapatkannya dengan pakej-pakej binari yang tersedia dalam TigerVNC.

Tentang Blog & Penulis

Topik perbincangan dalam blog ini merangkumi Linux dan perisian sumber terbuka, Virtual Machine, serta Typesetting system.
Fokus semasa: Full Stack Development
Minat sampingan: Analisis Data
Bakat tersembunyi hamba (yang patutlah dipendam buat selama-lamanya): Menyanyi dan melukis.

Sumber dari Wallpaper Cave.