Nginx ialah pelayan web yang berkuasa dan pelayan proksi terbalik Ia boleh digunakan untuk protokol HTTP, HTTPS, SMTP, POP3 dan IMAP Ia adalah pelayan web berprestasi tinggi dan kestabilan. Golang ialah bahasa pengaturcaraan yang dibangunkan oleh Google Ia mempunyai ciri-ciri kecekapan dan kesederhanaan yang tinggi Oleh itu, Golang sering digunakan untuk menulis program bahagian belakang dalam aplikasi dengan bahagian hadapan dan bahagian belakang yang berasingan. Untuk meningkatkan prestasi dan kebolehskalaan aplikasi, kami biasanya perlu menggunakan Nginx sebagai proksi terbalik untuk memajukan permintaan ke pelayan belakang Golang.
Sebelum mengkonfigurasi Nginx sebagai pelayan proksi terbalik, kami perlu mengesahkan bahawa aplikasi Golang dipasang dan berjalan pada pelayan. Kami boleh mengesahkan sama ada Golang telah dipasang melalui arahan berikut:
go version
Jika nombor versi dikembalikan, Golang telah berjaya dipasang. Seterusnya, kami perlu mendayakan perkhidmatan HTTP dalam aplikasi Golang, seperti yang ditunjukkan di bawah:
package main import ( "fmt" "net/http" ) func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hello, Golang!") }) http.ListenAndServe(":8080", nil) }
Dalam kod ini, kami mentakrifkan fungsi pemprosesan HTTP yang akan mengembalikan "Hello, Golang!". Kemudian, kami menggunakan fungsi http.ListenAndServe()
untuk mendaftarkan perkhidmatan HTTP pada port 8080.
Seterusnya, kami mengkonfigurasi Nginx sebagai pelayan proksi terbalik untuk memajukan permintaan ke pelayan belakang Golang. Kami boleh menambah kandungan berikut pada fail konfigurasi Nginx:
server { listen 80; server_name localhost; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
Dalam kod ini, kami mentakrifkan blok pelayan, gunakan arahan listen
untuk menetapkan port yang didengari Nginx dan gunakan server_name
arahan Tetapkan nama pelayan. Kemudian, kami menggunakan arahan location
untuk menentukan laluan permintaan dan memajukan permintaan ke alamat http://127.0.0.1:8080
. Pada masa yang sama, kami menggunakan arahan proxy_set_header
untuk menetapkan beberapa maklumat pengepala HTTP supaya aplikasi Golang boleh mendapatkan alamat IP klien dengan betul.
Sekarang, kita boleh menggunakan arahan berikut untuk menguji sama ada Nginx telah berjaya memajukan permintaan ke aplikasi Golang:
curl http://localhost/
Jika ia mengembalikan "Hello, Golang!", maka Nginx The permintaan telah berjaya dimajukan ke pelayan bahagian belakang Golang.
Untuk meringkaskan, sebelum mengkonfigurasi Nginx sebagai pelayan proksi terbalik, kami perlu mengesahkan bahawa aplikasi Golang telah dipasang dan berjalan pada pelayan. Kemudian, kami mendayakan perkhidmatan HTTP Golang dan mengkonfigurasi Nginx sebagai pelayan proksi terbalik untuk memajukan permintaan ke pelayan bahagian belakang Golang. Sudah tentu, untuk aplikasi tertentu, konfigurasi terperinci diperlukan berdasarkan situasi sebenar.
Atas ialah kandungan terperinci Bagaimanakah nginx memajukan permintaan kepada pelayan bahagian belakang Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!