GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So führen Sie Python-Skripte mit Apache und mod_wsgi unter Ubuntu 20.04 aus

mod_wsgi ist ein Apache-Modul, das eine Schnittstelle zum Hosten von Python-basierten Webanwendungen unter Apache bereitstellt. Es eignet sich für das Hosten von leistungsstarken Produktions-Websites sowie für Ihre durchschnittlichen selbstverwalteten persönlichen Websites, die auf Webhosting-Diensten ausgeführt werden. Mit mod_wsgi können Sie ganz einfach Anwendungen bereitstellen, die mit Frameworks und Tools wie Django, Web.py, Werkzug, Chery.py, TurboGears und Flask geschrieben wurden.

In diesem Tutorial lernen wir, wie man mod_wsgi mit dem Apache-Server auf einem Ubuntu 20.04-Server installiert und einrichtet.

Voraussetzungen

  • Ein Server mit Ubuntu 20.04.
  • Ein Root-Passwort wird auf dem Server konfiguriert.

Erste Schritte

Bevor Sie beginnen, ist es eine gute Idee, Ihr System mit der neuesten Version zu aktualisieren. Sie können Ihr System mit dem folgenden Befehl aktualisieren:

apt-get update -y
apt-get upgrade -y

Starten Sie das System nach der Aktualisierung neu, um die Änderungen zu implementieren.

Python installieren

Standardmäßig ist Python auf dem Ubuntu 20.04-Server vorinstalliert. Wenn es nicht installiert ist, können Sie es mit dem folgenden Befehl installieren:

apt-get install python3 libexpat1 -y

Sobald die Installation abgeschlossen ist, können Sie mit dem nächsten Schritt fortfahren.

Installieren Sie Apache und mod_wsgi

Als nächstes müssen Sie den Apache-Webserver und das Python-Modul mod_wsgi auf Ihrem System installieren. Sie können sie installieren, indem Sie den folgenden Befehl ausführen:

apt-get install apache2 apache2-utils ssl-cert libapache2-mod-wsgi -y

Sobald alle Pakete installiert sind, können Sie mit dem nächsten Schritt fortfahren.

Apache für mod_wsgi konfigurieren

Als Nächstes müssen Sie ein neues Python-Skript im Apache-Standard-Web-Root-Verzeichnis erstellen und es über das Apache-Modul mod_wsgi bereitstellen.

Sie können es mit dem folgenden Befehl erstellen:

nano /var/www/html/wsgy.py

Fügen Sie die folgenden Zeilen hinzu:

def application(environ,start_response):
    status = '200 OK'
    html = 'html>\n' \
           '<body>\n' \
           '<div style="width: 100%; font-size: 40px; font-weight: bold; text-align: center;">\n' \
           'Welcome to mod_wsgi Test Page\n' \
           '</div>\n' \
           '</body>\n' \
           '</html>\n'
    response_header = [('Content-type','text/html')]
    start_response(status,response_header)
    return [html]

Speichern und schließen Sie die Datei. Ändern Sie dann den Eigentümer der Datei mit dem folgenden Befehl in www-data:

chown www-data:www-data /var/www/html/wsgy.py

Erstellen Sie als Nächstes eine Konfigurationsdatei für den virtuellen Apache-Host, um diese Datei über das HTTP-Protokoll bereitzustellen.

nano /etc/apache2/conf-available/wsgi.conf

Fügen Sie die folgende Zeile hinzu:

WSGIScriptAlias /wsgi /var/www/html/wsgy.py

Speichern und schließen Sie die Datei. Aktivieren Sie dann die mod-wsgi-Konfiguration und starten Sie den Apache-Dienst mit dem folgenden Befehl neu:

a2enconf wsgi
systemctl restart apache2

Mod-wsgi testen

Zu diesem Zeitpunkt ist der Apache-Webserver so konfiguriert, dass er Ihre Python-Datei über das HTTP-Protokoll bereitstellt.

Öffnen Sie zum Testen Ihren Webbrowser und geben Sie die URL http://your-server-ip/wsgi ein. Sie sollten die mod-wsgi-Testseite im folgenden Bildschirm sehen:

Schlussfolgerung

Herzlichen Glückwunsch! Sie haben das Python-Skript erfolgreich über den Apache-Webserver mithilfe des Moduls mod_wsgi auf dem Ubuntu 20.04-Server bereitgestellt. Ich hoffe, Sie können jetzt problemlos jede Python-Anwendung mit Apache und mod_wsgi in der Produktionsumgebung bereitstellen.


Ubuntu
  1. So installieren und konfigurieren Sie Nextcloud mit Apache unter Ubuntu 18.04

  2. So installieren und sichern Sie phpMyAdmin mit Apache unter Ubuntu 18.04

  3. Wie man ein C-Programm in Ubuntu kompiliert und ausführt

  4. So installieren Sie Apache Maven unter Ubuntu 18.04 und 16.04

  5. Wie installiere ich Python unter Ubuntu 20.04 und 18.04?

So beschleunigen Sie Apache mit mod_pagespeed und Memcached unter Ubuntu 15.10

So installieren Sie Flask mit Python 3 unter Ubuntu 18.04

So installieren Sie PrestaShop auf Ubuntu 20.04 mit Apache

So installieren Sie Drupal mit Apache auf Debian und Ubuntu

So installieren Sie Apache mit Python Mod_wsgi unter Debian 10

So installieren Sie Django 3.2 auf Ubuntu 20.04 mit Apache und WSGI