ubuntuusers.de

nginx "Error 404" Problem

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

tux2be

Avatar von tux2be

Anmeldungsdatum:
28. März 2010

Beiträge: Zähle...

Hallo ich habe ein Problem mit meinem nginx bei dem ich nicht weiterkomme, und zwar habe ich in meiner nginx.conf folgendes eingerichtet:

        location ^~ /files/ {
            root /var/www/files;
            if ($query_string) {
                expires max;
            }
        }

Der Ordner /var/www/files existiert auch aber wenn ich versuche eine Datei im Ordner per Browser aufzurufen gibt dieser den Fehlercode Error 404 zurück

DerDenker

Anmeldungsdatum:
15. April 2008

Beiträge: 106

Wäre mein Wiki-Artikel raus, hättest du das Problem nicht! 😛

Nein Scherz, folgendes: Du musst mit einer if ()-Anweisung arbeiten. Mit einer "location" beschreibst du allgemeine Orte, soweit ich weiß, in deinem Beispiel sogar falsch, aber ich mag mich täuschen.

Probiere es mal so:

if (location ~ "^/files/") {

     root /var/www/files;

     if ($query_string) {
          expires max;
     }

}

adun Team-Icon

Avatar von adun

Anmeldungsdatum:
29. März 2005

Beiträge: 8606

Ne, man muss nicht unbedingt if benutzen. Mal generell, wenn du so ein Problem hast, geht der erste Weg ins access.log und error.log. Da siehst du den Request, was damit gemacht wurde und welchen Fehler das ergeben hat. (Gut, das weißt du schon es ist 404)

Meinst du nicht eher

location ~ ^/files/

?

tux2be

(Themenstarter)
Avatar von tux2be

Anmeldungsdatum:
28. März 2010

Beiträge: 15

Lese und Schreibrechte für den Ordner sind gesetzt irgendwie funktionieren aber beide Vorschläge nicht

DerDenker

Anmeldungsdatum:
15. April 2008

Beiträge: 106

adun schrieb:

Ne, man muss nicht unbedingt if benutzen. Mal generell, wenn du so ein Problem hast, geht der erste Weg ins access.log und error.log. Da siehst du den Request, was damit gemacht wurde und welchen Fehler das ergeben hat. (Gut, das weißt du schon es ist 404)

Meinst du nicht eher

location ~ ^/files/

?

Boah, irgenwas stimmt mit mir nicht 😀 Natürlich hast du Recht, if()s kann man auch benutzen, muss man aber nicht. Je nach belieben

tux2be

Lese und Schreibrechte für den Ordner sind gesetzt irgendwie funktionieren aber beide Vorschläge nicht

Hast du eine Log-Datei von nginx? Wenn ja, schau mal nach, was dort steht. Meistens dokumentiert er ziemlich genau wo es hängt.

tux2be

(Themenstarter)
Avatar von tux2be

Anmeldungsdatum:
28. März 2010

Beiträge: 15

Mh er sagt das er den Ordner nicht Gefunden hat obwohl er existiert, ich leite die Anfragen jetzt per proxy einfach auf meinen Apache weiter

DerDenker

Anmeldungsdatum:
15. April 2008

Beiträge: 106

Ich denke, ich weiß woran es liegt:

Meine Versuche ergeben nämlich das gleiche, da /var/[...] nicht mit dem Browser erreichbar ist. D.h. die Dateien müssen irgendwo erreichbar liegen.

Antworten |