Django-webseite mit Nginx auf port 80 anzeigen

Django, Flask, Bottle, WSGI, CGI…
nezzcarth
User
Beiträge: 574
Registriert: Samstag 16. April 2011, 12:47

Samstag 6. Oktober 2018, 14:02

Septias hat geschrieben:
Samstag 6. Oktober 2018, 13:25
Ist es normal, dass da mehrere Nginx-Einträge sind ?
Ja. Es gibt einen Master Prozess und mehrere Worker.
Der Fehler ensteht, weil Firefox irgendwie auf /var/www/html zugreifen will, und die anderen Browser nicht. Deshalb dann der 403, weil der Server keine Berechtigung für das Verzeichnis hat.
Firefox kommt nicht von alleine auf die Idee, diesen Pfad (einen absoluten Pfad auf dem Server) anzufordern. Firefox wird von irgendeiner Stelle mitgeteilt, z.B. über einen HTTP-Redirect, dass es diesen Pfad anfordern soll. Das deutet auf einen Konfigurationsfehler hin.
Sirius3
User
Beiträge: 8593
Registriert: Sonntag 21. Oktober 2012, 17:20

Samstag 6. Oktober 2018, 14:27

Wir kennen Deine Konfiguration nicht! Wenn Du mit Firefox auf / zugreifst, dann sollte das keinen Unterschied machen, wie wenn Du mit Chrome auf / zugreifst.
Septias
User
Beiträge: 73
Registriert: Freitag 24. Juni 2016, 19:15

Samstag 6. Oktober 2018, 18:54

Also das hier ist meine Konfigdatei:

Code: Alles auswählen

# mysite_nginx.conf

# the upstream component nginx needs to connect to
upstream django {
    # server unix:///path/to/your/mysite/mysite.sock; # for a file socket
    server 127.0.0.1:8001; # for a web port socket (we'll use this first)
}
# configuration of the server
server {
    # the port your site will be served on
    listen      80;
    # the domain name it will serve for
    server_name dreiecksturnier.de; # substitute your machine's IP address or FQDN
    charset     utf-8;

    # max upload size
    client_max_body_size 75M;   # adjust to taste

    # Django media
    location /media  {
        alias /home/dreiecksturnier/webseite/dreiecksturnier-webseite/dreiecksturnier/media;  # your Django project's media files - amend as required
    }

    location /static {
        alias /home/dreiecksturnier/webseite/dreiecksturnier-webseite/static; # your Django project's static files - amend as required
    }
    # Finally, send all non-media requests to the Django server.
    location / {
        uwsgi_pass  django;
        include     /home/dreiecksturnier/webseite/uwsgi_params; # the uwsgi_params file you installed
    }
}
Das hier meine uwsgi_params:

Code: Alles auswählen


uwsgi_param  QUERY_STRING       $query_string;
uwsgi_param  REQUEST_METHOD     $request_method;
uwsgi_param  CONTENT_TYPE       $content_type;
uwsgi_param  CONTENT_LENGTH     $content_length;

uwsgi_param  REQUEST_URI        $request_uri;
uwsgi_param  PATH_INFO          $document_uri;
uwsgi_param  DOCUMENT_ROOT      $document_root;
uwsgi_param  SERVER_PROTOCOL    $server_protocol;
uwsgi_param  REQUEST_SCHEME     $scheme;
uwsgi_param  HTTPS              $https if_not_empty;

uwsgi_param  REMOTE_ADDR        $remote_addr;
uwsgi_param  REMOTE_PORT        $remote_port;
uwsgi_param  SERVER_PORT        $server_port;
uwsgi_param  SERVER_NAME        $server_name;
und an der normalen Serverkonfiguration habe ich nichts geändernt. Also kann ich mir kaum vorstellen, warum ich solche Fehler bekomme. Kann es irgendwie sein, dass Apache2 irgendwelche Konfigurationen geändert hat ? (Sry habe keine Ahung von Linux)
nezzcarth
User
Beiträge: 574
Registriert: Samstag 16. April 2011, 12:47

Samstag 6. Oktober 2018, 19:44

<deine-domain>.de und www.<deine-domain>.de sind zwei verschiedene Dinge. Hast du daran beim Aufruf gedacht? Das scheint das Problem zu sein. In deiner Konfiguration sehe ich nur die Variante ohne www, du musst diese Subdomain bei 'server_name' mit aufführen, wenn du sie verwenden möchtest.
Septias
User
Beiträge: 73
Registriert: Freitag 24. Juni 2016, 19:15

Samstag 6. Oktober 2018, 20:10

Ja, das war es, vielen vielen Dank !
Antworten