Python 3.7 auf Arch Linux mit Apache oder Nginx installieren

Systemvoraussetzungen

  • Ein Server mit aktueller Arch-Linux-Distribution (siehe offizielle Anleitung).
  • Ein betriebsbereiter Webserver – entweder Apache oder Nginx ist installiert und eingerichtet.
  • Root-Zugriff über sudo:
    Befehle, die Administratorrechte benötigen, sind mit einem # gekennzeichnet. Es wird empfohlen, diese Befehle als normaler Nutzer mit sudo auszuführen.
  • Ein installierter Texteditor, mit dem du vertraut bist – zum Beispiel vi, vim, nano, emacs oder ein ähnliches Tool.

Installation von Python 3.7 auf dem Webserver

Mit Apache

Es ist nicht möglich, gleichzeitig die Apache-Module für Python 2.x und 3.x unter Arch Linux zu betreiben. In der Praxis stellt das aber kaum ein Problem dar.

Um Python 3.x zu aktivieren, führe folgenden Befehl aus:

Anschließend bearbeitest du die Apache-Konfigurationsdatei unter /etc/httpd/conf/httpd.conf. Gehe ans Ende der LoadModule-Anweisungen und füge diese Zeile hinzu:

LoadModule wsgi_module modules/mod_wsgi.so

Mit Nginx

Um Python 3.x für Nginx zu aktivieren, führe folgenden Befehl aus:

# pacman -S uwsgi-plugin-python

Python-Installation testen

Wechsle in ein geeignetes Verzeichnis und erstelle eine Datei mit dem Namen test.py. Der Inhalt sollte wie folgt aussehen:


#-*- coding: utf-8 -*-
def wsgi_app(environment, start_response):
    import sys
    output = sys.version.encode('utf8')
    status = '200 OK'
    headers = [('Content-type', 'text/plain'),
               ('Content-Length', str(len(output)))]
    start_response(status, headers)
    yield output

application = wsgi_app


Apache-Konfiguration

Um die Testanwendung mit Apache zu verbinden, füge die folgende Zeile entweder direkt am Ende der Datei /etc/httpd/conf/httpd.conf hinzu oder innerhalb des entsprechenden <VirtualHost>-Blocks, falls mehrere Hosts verwendet werden:

WSGIScriptAlias /wsgi_app /srv/http/test.py

Starte den Apache-Webserver neu, damit die Änderungen übernommen werden:

Öffne nun einen Webbrowser und rufe die Adresse http://DEIN-SERVER-ADRESSE-ODER-IP/wsgi_app auf. Du solltest eine Testseite sehen, die die Python- und GCC-Version anzeigt.

Entferne abschließend die Datei test.py sowie den zuvor eingefügten WSGIScriptAlias-Eintrag aus der Apache-Konfiguration.

Starte Apache erneut:


Python 3.7 mit uWSGI und Nginx auf Arch Linux konfigurieren

uWSGI-Konfiguration erstellen

Erstelle zunächst die Datei /etc/uwsgi/wsgi_app.ini und trage den folgenden Inhalt ein:

[uwsgi]
socket = /run/uwsgi/wsgi_app.sock
uid = http
gid = http
plugins = python
chdir = /usr/share/nginx/html/
wsgi-file=test.py
callable = application

Starte dann uWSGI mit folgendem Befehl, um wsgi_app bereitzustellen:

# systemctl start uwsgi@wsgi_app

Nginx-Konfiguration anpassen

Bearbeite die Datei /etc/nginx/nginx.conf. Füge innerhalb jedes gewünschten server-Blocks den folgenden Abschnitt ein. Falls virtuelle Hosts verwendet werden, trage die Konfiguration in den jeweiligen Host-Dateien ein:

location ~ \wsgi_app {
    root /usr/share/nginx/html/;
    include uwsgi_params;
    uwsgi_pass unix:/run/uwsgi/wsgi_app.sock;
}

Starte Nginx neu, um die Änderungen zu übernehmen:

Rufe nun im Browser die Adresse http://DEIN-SERVER-ADRESSE-ODER-IP/wsgi_app auf. Dort wird eine Testseite angezeigt, die die installierte Python- sowie GCC-Version zeigt.

Aufräumen

Wenn du bestätigt hast, dass alles funktioniert, lösche die Datei test.py sowie den entsprechenden location-Block für wsgi_app in der Datei /etc/nginx/nginx.conf.

Starte Nginx anschließend erneut:

Beende danach den uWSGI-Dienst für wsgi_app mit folgendem Befehl:

# systemctl stop uwsgi@wsgi_app

Zum Schluss entferne sowohl die Datei /etc/uwsgi/wsgi_app.ini als auch die test.py-Datei, um die Testumgebung vollständig zu bereinigen.

Fazit

Wenn du alle Schritte wie beschrieben ausgeführt hast, läuft Python 3.7 erfolgreich auf deinem Arch-Linux-Server – integriert mit uWSGI und Nginx. Diese Konfiguration bietet eine stabile Grundlage zur Ausführung von WSGI-basierten Anwendungen und bleibt dabei flexibel und leistungsfähig. Vergiss nicht, die Testdateien und Konfigurationen wieder zu entfernen, um dein System sauber und sicher zu halten.

Quelle: vultr.com

Jetzt 200€ Guthaben sichern

Registrieren Sie sich jetzt in unserer ccloud³ und erhalten Sie 200€ Startguthaben für Ihr Projekt.

Das könnte Sie auch interessieren: