Lösung für Djangos Unfähigkeit, mit dem uwsgi+nginx-Proxy auf statische Ressourcen zuzugreifen

Lösung für Djangos Unfähigkeit, mit dem uwsgi+nginx-Proxy auf statische Ressourcen zuzugreifen

Beim Bereitstellen des uwsgi+nginx-Proxys Django ist der Zugriff über uwsgi normal, bei Verwendung des Nginx-Proxy-Port-Zugriffs kann jedoch nicht auf statische Ressourcen zugegriffen werden.

Lösung:

  • Überprüfen Sie den Nginx-Startbenutzer und gewähren Sie diesem Benutzer Zugriff auf statische Ressourcen.
  • Mein statisches Ressourcenverzeichnis ist beispielsweise: /data/django/static
  • Ermächtigung: ch mod 755 /data/django/static -R

uwsgi-Konfiguration:

# uwsig beginnt mit der Verwendung der Konfigurationsdatei [uwsgi]
# Das Stammverzeichnis des Projekts ist chdir=/data/django/dailyfresh
#Geben Sie die Anwendung des Projekts an, die sich vom Startbefehl unterscheidet --wsgi-filemysite/wsgi.py
#logsquery Ihre eigene Anwendung namemodule=dailyfresh.wsgi:application
#die lokale Unix-Socket-Datei, die dann mit Nginx kommuniziert
#Geben Sie den Dateipfad von Sock an. Diese Sock-Datei wird in uwsgi_pass von nginx für die Kommunikation zwischen nginx und uwsgi konfiguriert. #Unterstützt IP+Port-Modus und Socket-Dateimodus #socket=/etc/uwsgi/uwsgi.sock
socket=127.0.0.1:9001
# Anzahl der Prozesse Prozesse = 8
# Anzahl der Arbeiter pro Prozessarbeiter=5
procname-prefix-spaced=dailyfresh # uwsgi Prozessnamenpräfix py-autoreload=1 # py-Dateiänderung, automatisches Laden # IP-Port angeben, Webzugriffseintrag http=0.0.0.0:9000
# Starten Sie den Benutzernamen und die Benutzergruppe von uwsgi uid=root
gid=Wurzel
# Aktivieren Sie den Masterprozess master=true
# Unix-Socket und PID-Datei automatisch entfernen, wenn der Dienst beendet wird vacuum=true
# Empfangenen Inhalt serialisieren, Thunder-Lock = true wenn möglich
# Threads aktivieren enable-threads=true
# Legen Sie ein Timeout fest, um weitere Anfragen zu unterbrechen, die das Anfragelimit des Servers überschreiten. harakiri=30
# Setze post-buffering=4096
# Legen Sie das Protokollverzeichnis fest daemonize=/var/log/uwsgi/uwsgi.log
# Die uWSGI-Prozessnummer wird in der PID-Datei = /etc/uwsgi/uwsgi.pid gespeichert.

Nginx-Konfiguration:

Server {
            hören Sie 9002;
            Servername 192.168.2.100;
            Zugriffsprotokoll /var/log/test.log;
            Fehlerprotokoll /var/log/test.log;
            Zeichensatz UTF-8;
            Maximale Client-Body-Größe: 100 M;
            Standort /static{
                    Alias ​​/data/django/dailyfresh/static;
            }
            Standort /Medien{
                    Alias ​​/data/django/dailyfresh/media;
            }
            Standort / {
                    uwsgi_params einschließen;
                    uwsgi_pass 127.0.0.1:9001;
            }
            Fehlerseite 500 502 503 504 /50x.html;
            Standort = /50x.html {
                Stamm-HTML;
            }
}

Dies ist das Ende dieses Artikels über die Lösung des Problems, dass der uwsgi+nginx-Proxy Django nicht auf statische Ressourcen zugreifen kann. Weitere verwandte Inhalte zum Thema „uwsgi+nginx-Proxy Django kann nicht zugreifen“ finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der Idee, Nginx + Uwsgi + Django-Projekte auf dem Server bereitzustellen
  • Django-Projekt uwsgi+Nginx Nanny-Level-Bereitstellung Tutorial-Implementierung
  • Detaillierte Bereitstellung von Django uwsgi Nginx in der Produktionsumgebung
  • Beispiel für die Bereitstellung eines Django-Projekts mit uwsgi+nginx
  • Detaillierte Erläuterung der Bereitstellung von Django + Uwsgi + Nginx in der Produktionsumgebung
  • Django2+uwsgi+nginx wird online auf dem Server Ubuntu16.04 bereitgestellt
  • Django + Uwsgi + Nginx, um eine Bereitstellungsmethode für die Produktionsumgebung zu erreichen
  • Lösen Sie alle Probleme bei der Bereitstellung von Django mit nginx+uwsgi (Zusammenfassung)

<<:  Reines CSS, um einen bewölkten Wettersymboleffekt zu erzielen

>>:  Lösen Sie das Problem des MySQL Threads_running-Surge und der langsamen Abfrage

Artikel empfehlen

Über das Problem der vertikalen Zentrierung von img und span in div

Wie unten dargestellt: XML/HTML-CodeInhalt in die...

Aufzeichnungen zur Verwendung von SSH-Befehlen unter Windows 8

1. Öffnen Sie die virtuelle Maschine und das Git-...

Einfaches Anwendungsbeispiel für MySQL-Trigger

Dieser Artikel veranschaulicht anhand von Beispie...

Detaillierte Konfiguration von Nginx, das sowohl Http als auch Https unterstützt

Heutzutage gehört die Unterstützung von HTTPS für...

MySQL 1130-Ausnahme, Remote-Anmeldung nicht möglich – Lösung

Inhaltsverzeichnis Frage: 1. Aktivieren Sie die B...

MySQL-Grundlagen - Kurzanleitung - Wissenszusammenfassung (mit Mindmap)

Inhaltsverzeichnis Vorwort 1. Grundkenntnisse der...

Verwendung des Linux-Befehls chkconfig

1. Befehlseinführung Der Befehl chkconfig wird zu...

Detailliertes Tutorial zur Springcloud-Alibaba-Nacos-Linux-Konfiguration

Laden Sie zuerst das komprimierte Nacos-Paket von...

Allgemeine Befehle für MySQL-Autorisierung, Start und Dienststart

1. Vier Startmethoden: 1.mysqld Starten Sie den M...

So erstellen Sie ein standardisiertes VMware-Image für Kubernetes unter Rancher

Wenn wir Kubernetes lernen, müssen wir in der Kub...