


Cara menggunakan proksi terbalik Nginx untuk menyelesaikan masalah merentas domain
Soalan
Dalam artikel yang dikongsi sebelum ini mengenai perkongsian sumber merentas domain, disebutkan bahawa apabila melintasi domain, jika anda ingin menghantar kuki, kawalan akses- allow-origin tidak boleh ditetapkan kepada * dan nama domain yang jelas yang konsisten dengan halaman web yang diminta mesti dinyatakan. Saya menghadapi masalah sedemikian apabila bekerjasama dengan orang lain semasa pembangunan projek ini.
Penyelesaian
Secara umumnya, menggunakan perkongsian sumber merentas domain cors dengan latar belakang akan mengakses- Hanya tetapkan control-allow-origin kepada nama domain yang sedang diakses Ini memerlukan kerjasama latar belakang, dan sesetengah penyemak imbas tidak menyokongnya.
Berdasarkan kerjasama dengan bahagian belakang rakan kongsi, proksi arah nginx digunakan untuk memenuhi dasar asal yang sama penyemak imbas untuk mencapai merentas domain
Kaedah pelaksanaan
Konsep proksi songsang
Kaedah proksi songsang merujuk kepada menggunakan pelayan proksi untuk menerima Internet Permintaan sambungan kemudiannya dimajukan kepada pelayan pada rangkaian dalaman dan hasil yang diperoleh daripada pelayan dikembalikan kepada klien yang meminta sambungan di Internet Pada masa ini, pelayan proksi muncul sebagai pelayan kepada dunia luar. Pelayan proksi terbalik kelihatan kepada klien sebagai pelayan asal, dan pelanggan tidak perlu membuat sebarang tetapan khas. Pelanggan menghantar permintaan biasa kepada kandungan dalam ruang nama proksi terbalik (ruang nama), dan kemudian proksi terbalik akan menentukan tempat untuk memajukan permintaan (pelayan asal) dan mengembalikan kandungan yang diperoleh kepada klien, seperti ini Kandungannya kandungan asalnya sendiri.
Langkah untuk menggunakan proksi terbalik nginx untuk mencapai domain silang
Muat turun pakej untuk membina persekitaran nginx
Ubah suai fail konfigurasi nginx, cari fail nixn.conf dan ubah suai konfigurasi yang berkaitan
http { include mime.types; default_type application/octet-stream; sendfile on; server { listen 8000; #监听8000端口,可以改成其他端口 server_name localhost; # 当前服务的域名 location /wili/api/ { proxy_pass http://chick.platform.deva.wili.us/api/; #添加访问路径录为/will/api的代理配置 proxy_http_version 1.1; } location / { proxy_pass http://localhost:8001; proxy_http_version 1.1; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }
Penjelasan konfigurasi:
-
Ia boleh dilihat daripada maklumat konfigurasi , kami membiarkan nginx mendengar port 8000 localhost Laman web a dan laman web b diakses melalui port 8000 localhost.
Kami telah mengkonfigurasi khas akses kepada "/will/api" supaya alamat yang bermula dengan "will/api" akan dimajukan kepada "" untuk diproses.
Pengubahsuaian alamat akses
Sekarang kita telah mengkonfigurasi nginx, semua akses mesti melalui nginx dan bukannya alamat asal tapak web (a laman web localhost:8001, b laman web). Jadi kita perlu mengubah suai antara muka permintaan dalam laman web a dan menggantikannya dengan. Seterusnya, mulakan nginx dan akses 8000 yang dikonfigurasikan
Satu perkara yang perlu diambil perhatian ialah permulaan nginx mungkin bercanggah dengan port dan menyebabkan permulaan gagal. Anda boleh Semak pengurus tugas untuk melihat sama ada ia berjaya dimulakan.
Atas ialah kandungan terperinci Cara menggunakan proksi terbalik Nginx untuk menyelesaikan masalah merentas domain. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Di Linux, gunakan arahan berikut untuk memeriksa sama ada nginx dimulakan: Hakim status SistemCTL Nginx berdasarkan output arahan: Jika "Aktif: Aktif (Running)" dipaparkan, Nginx dimulakan. Jika "aktif: tidak aktif (mati)" dipaparkan, nginx dihentikan.

Langkah -langkah untuk memulakan Nginx di Linux: Periksa sama ada Nginx dipasang. Gunakan SistemCTL Mula Nginx untuk memulakan perkhidmatan Nginx. Gunakan SistemCTL Dayakan NGINX untuk membolehkan permulaan automatik Nginx pada permulaan sistem. Gunakan Status SistemCTL Nginx untuk mengesahkan bahawa permulaan berjaya. Lawati http: // localhost dalam pelayar web untuk melihat halaman selamat datang lalai.

Memulakan pelayan Nginx memerlukan langkah-langkah yang berbeza mengikut sistem operasi yang berbeza: Sistem Linux/Unix: Pasang pakej Nginx (contohnya, menggunakan apt-get atau yum). Gunakan SystemCTL untuk memulakan perkhidmatan Nginx (contohnya, SUDO SystemCTL Mula Nginx). Sistem Windows: Muat turun dan pasang fail binari Windows. Mula Nginx menggunakan nginx.exe executable (contohnya, nginx.exe -c conf \ nginx.conf). Tidak kira sistem operasi yang anda gunakan, anda boleh mengakses IP pelayan

Terdapat dua cara untuk menyelesaikan masalah silang domain Nginx: Ubah suai tajuk tindak balas silang domain: Tambah arahan untuk membenarkan permintaan lintas domain, nyatakan kaedah dan tajuk yang dibenarkan, dan tetapkan masa cache. Gunakan modul CORS: Dayakan modul dan konfigurasikan peraturan CORS untuk membolehkan permintaan, kaedah, tajuk, dan masa cache domain.

Jawab kepada Soalan: 304 Tidak diubahsuai ralat menunjukkan bahawa penyemak imbas telah cache versi sumber terkini permintaan klien. Penyelesaian: 1. Kosongkan cache penyemak imbas; 2. Lumpuhkan cache penyemak imbas; 3. Konfigurasi nginx untuk membolehkan cache pelanggan; 4. Periksa keizinan fail; 5. Semak fail hash; 6. Lumpuhkan CDN atau cache proksi terbalik; 7. Mulakan semula nginx.

Pelayan tidak mempunyai kebenaran untuk mengakses sumber yang diminta, mengakibatkan ralat NGINX 403. Penyelesaian termasuk: Periksa keizinan fail. Semak konfigurasi .htaccess. Semak konfigurasi Nginx. Konfigurasikan keizinan Selinux. Semak peraturan firewall. Menyelesaikan masalah lain seperti masalah penyemak imbas, kegagalan pelayan, atau kesilapan lain yang mungkin.
