Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Penyepaduan dan pengoptimuman Pengurus Proksi Nginx dan rangka kerja aplikasi web biasa

Penyepaduan dan pengoptimuman Pengurus Proksi Nginx dan rangka kerja aplikasi web biasa

WBOY
WBOYasal
2023-09-26 11:35:03936semak imbas

Nginx Proxy Manager与常见Web应用框架的集成与优化

Pengintegrasian dan pengoptimuman Pengurus Proksi Nginx dan rangka kerja aplikasi web biasa

Pengenalan:
Nginx ialah pelayan web berprestasi tinggi, ringan dan pelayan proksi terbalik, dan Pengurus Proksi Nginx adalah berdasarkan antara muka Pengurusan Nginx, digunakan untuk mengurus dan konfigurasikan perkhidmatan proksi Nginx. Apabila menggunakan rangka kerja aplikasi web biasa seperti Django, Flask, Laravel, dll. untuk membina aplikasi web, penyepaduan dan pengoptimuman Pengurus Proksi Nginx boleh meningkatkan prestasi dan keselamatan aplikasi. Artikel ini akan membincangkan cara mengintegrasikan Pengurus Proksi Nginx dengan rangka kerja aplikasi web biasa dan memberikan contoh kod khusus.

1. Pemasangan dan konfigurasi asas Pengurus Proksi Nginx

  1. Pemasangan dan konfigurasi Pengurus Proksi Nginx
    Pertama, kita perlu memasang Pengurus Proksi Nginx, yang boleh dipasang pada sistem Linux melalui arahan berikut:

    rreee

    Selepas pemasangan selesai, Fail konfigurasi lalai terletak dalam direktori /etc/nginx-proxy-manager/config Kami boleh melakukan konfigurasi asas Pengurus Proksi Nginx dalam fail ini, seperti kata laluan pentadbir , tetapan pangkalan data, dsb. /etc/nginx-proxy-manager/config目录下,我们可以在该文件中进行Nginx Proxy Manager的基本配置,如管理员密码、数据库设置等。

  2. 创建Web应用框架
    在集成Nginx Proxy Manager之前,我们需要先创建一个基本的Web应用框架。以Flask框架为例,可以通过以下代码创建一个简单的Hello World应用:

    sudo apt-get install nginx-proxy-manager

二、Nginx代理配置

  1. 添加域名解析
    首先,我们需要在Nginx Proxy Manager中添加域名解析,将我们的应用访问路径与域名绑定。在Nginx Proxy Manager的管理界面中,选择“Proxy Hosts”,点击“Add Proxy Host”,填写域名和应用的IP地址和端口。
  2. 配置反向代理
    接下来,我们需要配置Nginx Proxy Manager的反向代理设置,将请求转发到我们的应用。在Nginx Proxy Manager的管理界面中,选择“Proxy”, 点击“Add Proxy”,填写域名和应用的IP地址和端口。同时,选择“Proxy Host:”中添加之前添加的域名解析。

三、优化集成

  1. 配置HTTPS
    为了保障数据传输的安全性,我们可以通过配置HTTPS来加密通信。在Nginx Proxy Manager的管理界面中,选择“SSL”,点击“Add SSL Certificate”,填写相关的证书和私钥信息,并与之前配置的域名进行绑定。
  2. 配置缓存
    为了提升应用的访问速度,我们可以配置Nginx的缓存功能。在Nginx Proxy Manager的管理界面中,选择“Proxy”,点击“Edit”进入编辑模式,找到location /部分,并添加以下代码:

    from flask import Flask
    
    app = Flask(__name__)
    
    @app.route('/')
    def hello_world():
     return 'Hello World!'
    
    if __name__ == '__main__':
     app.run()

    这样,Nginx会将应用的响应结果缓存一天,从而减少对应用的请求。

  3. 配置负载均衡
    当我们的应用需要处理大量的并发请求时,我们可以使用Nginx的负载均衡功能来分担服务器的负载。在Nginx Proxy Manager的管理界面中,选择“Proxy”,点击“Edit”进入编辑模式,找到upstream backend

    Buat rangka kerja aplikasi Web
  4. Sebelum menyepadukan Pengurus Proksi Nginx, kita perlu mencipta rangka kerja aplikasi Web asas. Mengambil rangka kerja Flask sebagai contoh, anda boleh membuat aplikasi Hello World yang ringkas melalui kod berikut:
proxy_cache my_cache;
proxy_cache_valid 200 1d;


2. Konfigurasi proksi Nginx 🎜🎜🎜Tambahkan resolusi nama domain 🎜Pertama, kita perlu menambah resolusi nama domain pada Pengurus Proksi Nginx, dan tambahkan kami Laluan akses aplikasi terikat pada nama domain. Dalam antara muka pengurusan Pengurus Proksi Nginx, pilih "Hos Proksi", klik "Tambah Hos Proksi", dan isikan nama domain serta alamat IP dan port aplikasi. 🎜🎜Konfigurasi Reverse Proxy🎜 Seterusnya, kami perlu mengkonfigurasi tetapan proksi terbalik Pengurus Proksi Nginx untuk memajukan permintaan kepada aplikasi kami. Dalam antara muka pengurusan Pengurus Proksi Nginx, pilih "Proksi", klik "Tambah Proksi", dan isikan nama domain serta alamat IP dan port aplikasi. Pada masa yang sama, pilih "Hos Proksi:" untuk menambah resolusi nama domain yang ditambahkan sebelum ini. 🎜🎜🎜3. Penyepaduan yang dioptimumkan 🎜🎜🎜Konfigurasikan HTTPS🎜Untuk memastikan keselamatan penghantaran data, kami boleh menyulitkan komunikasi dengan mengkonfigurasi HTTPS. Dalam antara muka pengurusan Pengurus Proksi Nginx, pilih "SSL", klik "Tambah Sijil SSL", isikan sijil yang berkaitan dan maklumat kunci peribadi, dan ikatkannya pada nama domain yang dikonfigurasikan sebelum ini. 🎜🎜🎜Konfigurasi cache🎜Untuk meningkatkan kelajuan akses aplikasi, kami boleh mengkonfigurasi fungsi cache Nginx. Dalam antara muka pengurusan Pengurus Proksi Nginx, pilih "Proksi", klik "Edit" untuk memasuki mod pengeditan, cari bahagian lokasi /, dan tambah kod berikut: 🎜
server 192.168.1.101:8000;
server 192.168.1.102:8000;
🎜Dengan cara ini, Nginx akan menghantar respons aplikasi Keputusan dicache untuk satu hari, mengurangkan permintaan kepada aplikasi. 🎜🎜🎜🎜Konfigurasikan pengimbangan beban🎜Apabila aplikasi kami perlu mengendalikan sejumlah besar permintaan serentak, kami boleh menggunakan fungsi pengimbangan beban Nginx untuk berkongsi beban pelayan. Dalam antara muka pengurusan Pengurus Proksi Nginx, pilih "Proksi", klik "Edit" untuk memasuki mod pengeditan, cari bahagian upstream backend dan tambah alamat IP dan port berbilang aplikasi, contohnya : 🎜rrreee🎜 Dengan cara ini, Nginx akan mengedarkan permintaan secara automatik kepada berbilang contoh aplikasi untuk mencapai pengimbangan beban. 🎜🎜🎜🎜IV Ringkasan🎜Dengan menyepadukan dan mengoptimumkan Pengurus Proksi Nginx dengan rangka kerja aplikasi web biasa, kami boleh meningkatkan prestasi dan keselamatan aplikasi. Artikel ini mengambil rangka kerja Flask sebagai contoh dan memberikan contoh kod khusus. Dalam aplikasi praktikal, kami boleh menyepadukan dan mengoptimumkan mengikut keperluan dan pilihan rangka kerja kami sendiri untuk mencapai hasil yang terbaik. Saya harap artikel ini dapat memberikan sedikit bantuan kepada pembaca dalam menggunakan Pengurus Proksi Nginx dan rangka kerja aplikasi web biasa. 🎜

Atas ialah kandungan terperinci Penyepaduan dan pengoptimuman Pengurus Proksi Nginx dan rangka kerja aplikasi web biasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn