Nginx gibt einen 403-Fehler für CSS/JS-Dateien
Ich habe setup nginx 0.7.67 auf Ubuntu10.10 zusammen mit php-cli . Ich bin versucht, meine front-controller basierte PHP-framework ausgeführt werden, aber alle Seiten ausser index.php geben einen 403-Fehler.
Ex :
- http://mysite.com/styles/style.css - 403 Forbidden
- http://mysite.com/scripts/script.css - 403 Forbidden
- http://mysite.com/index.php - Werke
Meine /etc/nginx/sites-enabled/default ist wie folgt
server {
listen 80;
server_name mysite.com;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log warn;
index index.php index.html;
root /full/path/to/public_html;
location ~* \.(js|css|png|jpg|jpeg|gif|ico|html)$ {
expires max;
}
location ~ index.php {
include /etc/nginx/fastcgi_params;
keepalive_timeout 0;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass 127.0.0.1:9000;
}
}
Irgendwelche Vorschläge auf, wie man den oben genannten?
PS: Dies ist der Eintrag aus dem error-log
2010/10/14 19:56:15 [error] 3284#0: *1 open() "/full/path/to/public_html/styles/style.css"
failed (13: Permission denied), client: 127.0.0.2, server: quickstart.local,
request: "GET /styles/style.css HTTP/1.1", host: "mysite"
- Verdammt. Es war Linux-Berechtigungsproblem. Einer der top-level-Verzeichnisse, die nicht über eine "r" - Berechtigung für andere. - Problem behoben ist.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hatte das gleiche problem. Fixiert es, indem Sie einfach die richtigen Berechtigungen auf meine CSS und JS Dateien und Ordner. Seien Sie vorsichtig über die Einstellung der Berechtigungen! Aber für eine Datei, die lesbar auf der web, es muss lesbar durch den Benutzer läuft der server-Prozess.
Gibt die Berechtigungen Lesen und ausführen. Die
-R
ist für rekursiv. Tun Sie dies nur für Dateien, die Sie wollen, lesbar von der Welt!chmod -R +rx css
statt?Alt Lösung: ändern Sie die führen Sie den Benutzer durch die Bearbeitung der " nginx.conf (z.B. /usr/local/nginx/conf/nginx.conf) an den Besitzer der Dateien:
Versuchen, diese in Ihre location-Zeile:
oder
Stellen Sie sicher, dass alle top-level-Verzeichnis hat die Berechtigung Ebenen UND die index.html. Die meisten der Zeit werden Sie kopieren Sie einfach die Datei, die Sie wollen, um zu sehen, in /www und benennen Sie es index.html stellen Sie sicher, dass der neue index.html über die richtigen Berechtigungen (um sicher zu sein 777 nur zum testen natürlich).
muss ich schreiben, Alternative Lösung für dieses problem.
Ich migrieren wordpress in plesk server und ich bekomme diese Fehlermeldung bei css-und js-Skripte.
Nginx-Konfiguration, erzeugen einen Fehler bekommen js-und css-Dateien.
Wenn ein wordpress-Fehler beim laden der CSS-und JS-Skripte (verboten),
es kann aufgrund der Konfiguration von nginx und apache.
ENTSPERREN, das Feld der Konfiguration von nginx und apache:
Intelligente Bearbeitung statischer Dateien -> DONT ÜBERPRÜFT
Löst dies mein problem. Ich hoffe, andere auch
pymessoft.com
müssen Sie schließen Sie server{} vor der Festlegung der Lage.
oder ändern Sie den Besitzer der Dateien auf www-data oder apache, wenn Sie nicht über Zugriff auf die Dateien.