Nginx donne une erreur 403 pour les fichiers CSS/JS
J'ai de configuration de nginx 0.7.67 sur Ubuntu10.10 avec php-cli . J'essaie d'obtenir mon avant-contrôleur en fonction de l'framework PHP à exécuter, mais toutes les pages sauf index.php donne une erreur 403.
Ex :
- http://mysite.com/styles/style.css - 403 Forbidden
- http://mysite.com/scripts/script.css - 403 Forbidden
- http://mysite.com/index.php - Travaux
Mon /etc/nginx/sites-enabled/default est comme suit
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;
}
}
Des suggestions sur la façon de fixer la dessus?
PS: C'est l'entrée dans le journal des erreurs
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"
Zut. C'était Linux problème d'autorisation. L'un des répertoires de niveau supérieur n'ont pas de "r" autorisation pour les autres. Problème est résolu.
OriginalL'auteur Adil | 2010-10-14
Vous devez vous connecter pour publier un commentaire.
Eu le même problème. Il fixe en définissant simplement les bonnes permissions sur mon CSS et JS fichiers et des dossiers. Soyez prudent sur la définition des autorisations! Mais pour qu'un fichier soit lisible sur le web, il doit être lisible par l'utilisateur qui exécute le processus serveur.
Donne les autorisations lire et exécuter. Le
-R
est récursive. Le faire uniquement pour les fichiers que vous souhaitez lisible par tout le monde!Ne devrait-elle pas être
chmod -R +rx css
à la place?Merci. Il n'est pas accepté dans Mac OS X si.
OriginalL'auteur Michael Butler
Alt solution: changer la course de l'utilisateur en modifiant le nginx.conf (par exemple, /usr/local/nginx/conf/nginx.conf) pour le propriétaire de ces fichiers:
OriginalL'auteur Avindra Goolcharan
Essayer dans votre emplacement en ligne:
ou
journal des erreurs, dit 2010/10/14 19:56:15 [erreur] 3284#0: *1 ouvrir() "/home/adil/NetBeansProjects-vieux/CrowdSourcedWeb/applications/csw/web/styles/style.css" a échoué (13: Permission denied), client: 127.0.0.2, serveur: guide de démarrage rapide.locale, demande: "GET /styles/style.css HTTP/1.1", l'hôte: "guide de démarrage rapide.locaux"
OriginalL'auteur Vantomex
Assurez-vous que chaque répertoire de niveau supérieur a des niveaux d'autorisation ET les index.html. La plupart du temps, vous aurez juste à copier le fichier que vous voulez voir dans /www et de le renommer index.html assurez-vous que le nouveau index.html a le droit d'autorisations (pour être sûr 777 juste pour le test, bien sûr).
OriginalL'auteur Teo
j'ai besoin d'écrire autre solution à ce problème.
- Je migrer wordpress sur le serveur parallels plesk panel et j'ai cette erreur avec les css et les scripts js.
Nginx configuration de produire un bug obtenir les fichiers css et js.
Si un wordpress erreur de chargement des CSS et scripts JS (interdit),
il peut être dû à la configuration de nginx et apache.
DÉVERROUILLER la boîte de configuration de nginx et apache:
Traitement Intelligent des fichiers statiques -> NE pas COCHÉE
Cela résout mon problème. J'espère que d'autres aussi
pymessoft.com
OriginalL'auteur vik
vous devez fermer serveur{} avant de définir l'emplacement.
ou changer le propriétaire des fichiers à www-data ou apache si vous n'avez pas accès aux fichiers.
c'est étrange, dans ma situation, il fonctionne avec la fermeture du serveur{} avant de définir un emplacement. Mais je suis content que vous avez trouvé la solution!
Maarten. Juste pour expliquer mon commentaire ci-dessus, la raison pour laquelle j'ai dit que c'est parce que nginx se plaint. Son "illégaux" pour garder l'emplacement de la balise à l'extérieur de la balise de serveur. Peut-être que vous devriez regarder dans votre conf de nouveau, pour voir précisément pourquoi il le fait. Bon à savoir. Et, merci pour votre aide.
emplacement de la balise en balise de serveur
OriginalL'auteur Maarten