Dalam Linux, pemajuan port merujuk kepada menggunakan Nginx untuk memantau port Apabila permintaan HTTP datang, ia memadankan HOST dan maklumat lain permintaan HTTP dengan fail konfigurasinya dan memajukannya ke port yang sepadan pemajuan boleh digunakan Akses nama domain tanpa menambah port.
Persekitaran pengendalian tutorial ini: sistem linux7.3, komputer Dell G3.
Apa itu pemajuan port
Apabila kami membina data dan aplikasi muat turun pada pelayan, aplikasi data memulakan port 8001, muat turun aplikasi memulakan port 8002. Pada masa ini, jika kami boleh lulus
localhost:8001 //资料 localhost:8002 //下载
, tetapi apabila kami biasanya mengakses aplikasi, kami berharap untuk mengakses nama domain tanpa menambah port, iaitu kedua-dua aplikasi diakses melalui port 80. Tetapi kita tahu bahawa port pada pelayan hanya boleh digunakan oleh satu program Apakah yang perlu kita lakukan pada masa ini? Kaedah biasa ialah menggunakan Nginx untuk penghantaran port. Prinsip pelaksanaan Nginx ialah: gunakan Nginx untuk memantau port 80. Apabila permintaan HTTP tiba, ia akan memadankan HOST dan maklumat lain permintaan HTTP dengan fail konfigurasinya dan memajukannya ke aplikasi yang sepadan. Sebagai contoh, apabila pengguna melawat linux.linuxmi.com, Nginx mengetahui daripada fail konfigurasi bahawa ini adalah permintaan HTTP untuk aplikasi data, jadi ia memajukan permintaan kepada aplikasi pada port 8001 untuk diproses. Apabila pengguna melawat m.linuxmi.com, Nginx mengetahui daripada fail konfigurasi bahawa ini adalah permintaan HTTP untuk memuat turun aplikasi, jadi ia memajukan permintaan ini kepada aplikasi pada port 8002 untuk diproses. Fail konfigurasi Nginx yang ringkas (bahagian) adalah seperti berikut:
#配置负载均衡池 #Demo1负载均衡池 upstream linux_pool{undefined server 127.0.0.1:8001; } #Demo2负载均衡池 upstream m_pool{undefined server 127.0.0.1:8002; } #Demo1端口转发 server {undefined listen 80; server_name linux.linuxidc.com; access_log logs/linux.log; error_log logs/linux.error; #将所有请求转发给demo_pool池的应用处理 location / {undefined proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://linux_pool; } } #Demo2端口转发 server {undefined listen 80; server_name m.linuxidc.com; access_log logs/m.log; error_log logs/m.error; #将所有请求转发给demo_pool池的应用处理 location / {undefined proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://m_pool; } }
Konfigurasi di atas dilaksanakan:
1 Apabila nama domain yang dilawati oleh pengguna ialah: http://linux .linuxidc.com, kami memajukan permintaannya secara automatik kepada aplikasi Tomcat dengan nombor port 8001 untuk diproses.
2. Apabila nama domain yang dilawati oleh pengguna ialah: http://m.linuxidc.com, kami memajukan permintaan secara automatik ke aplikasi Tomcat dengan nombor port 8002 untuk diproses.
Pelaksanaan teknikal di atas ialah pemajuan port. Pemajuan port merujuk kepada perisian yang memantau secara seragam port tertentu pada nama domain tertentu (biasanya port 80 Apabila nama domain dan port pelayan akses memenuhi keperluan, ia akan dimajukan kepada pelayan Tomcat yang ditetapkan untuk diproses mengikut keperluan). konfigurasi. Nginx kami yang biasa digunakan juga mempunyai fungsi pemajuan port.
Cadangan berkaitan: "Tutorial Video Linux"
Atas ialah kandungan terperinci Apakah pemajuan port linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!