So richten Sie Gunicorn für die Bereitstellung von Python-Webanwendungen ein

In diesem Artikel richten wir ein VPS ein, um Python-Webanwendungen mit Gunicorn und Nginx als Reverse-Proxy bereitzustellen. Wir verwenden Nginx als Reverse-Proxy, anstatt direkt mit Gunicorn zu arbeiten, um DoS-Angriffe auf Gunicorn zu verhindern. Die Verwendung von Nginx führt auch zu einer besseren Leistung (mit Proxy-Pufferung) und dazu, dass mehr Anforderungen verarbeitet werden.

Loslegen

In diesem Tutorial wird davon ausgegangen, dass Sie bereits eine VM mit Ubuntu 14.04 oder neuer installiert, aktualisiert und gesichert haben.

  • Unsere Nginx-Instanz wird auf HTTP-Port 80 ausgeführt (Sie können jedoch problemlos auf HTTPS aktualisieren).
  • Unsere Beispiel-Python-App überwacht Port 8080. Dieser Port wird für iptables geschlossen, um den Remotezugriff zu verhindern.
  • Dieses Tutorial sollte mit minimalen Änderungen auf anderen Distributionen ausgeführt werden.

Installieren pip, virtualenv:

apt-get install python-pip python-virtualenv

Port 8080 schließen. Gunicorn ist nur mit Nginx erreichbar.

iptables -A INPUT -p tcp --destination-port 8080 -j DROP

Erstellen Sie einen neuen Ordner und konfigurieren Sie unsere Anwendung. Wir werden das Flask-Framework verwenden.

mkdir /var/www-folder/
cd /var/www-folder/
virtualenv exampleapp
source exampleapp/bin/activate
cd exampleapp
pip install gunicorn
pip install flask

Erstellen Sie die Anwendungsdatei.

nano myapplication.py 

Fügen Sie Folgendes ein:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, Vultr!'

Dies würde eine einfache Seite mit der Aufschrift "Hallo, Vultr!" wenn jemand auf die Seite zugreift. Starten Sie jetzt Gunicorn. Ersetzen xSie die CPU-Kerne Ihrer VM durch die zweifache Anzahl.

gunicorn -w x myapplication:app &

Installieren Sie Nginx und konfigurieren Sie den Reverse Proxy.

deactivate
apt-get install nginx
nano /etc/nginx/sites-enabled/default

Suchen Sie nach der location / {Zeile und ersetzen Sie den Inhalt in den Klammern durch den folgenden Inhalt.

proxy_set_header HOST $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8000/;

Diese Konfiguration weist Nginx an, einige Informationen (HTTP-Protokoll, Remote-IP-Adresse) zusammen mit der tatsächlichen Anforderung an den Gunicorn-Server weiterzuleiten. Laden Sie Nginx neu.

service nginx reload

Zu diesem Zeitpunkt wurde Ihre Gunicorn-Anwendung ordnungsgemäß konfiguriert. Sie können mit einem Webbrowser unter darauf zugreifen http://your-vps-ip/.



Leave a Comment

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.