Nginx 403 interdit : dépannage des autorisations d'accès aux fichiers
Lorsque vous rencontrez l'erreur frustrante « 403 interdit » dans Nginx, déterminer la cause première peut être un défi. Cette erreur indique généralement que l'accès à un fichier ou un répertoire est refusé. Dans ce scénario spécifique, l'utilisateur a configuré Nginx avec PHP-FPM sur CentOS 5, mais ne peut servir aucun fichier du répertoire source spécifié.
Après examen, le problème provient d'autorisations de fichiers insuffisantes. Nginx s'exécute en tant qu'utilisateur « www-data », et le répertoire « public_html », qui contient les fichiers en cours de traitement, doit disposer d'autorisations accessibles pour cet utilisateur. Bien que les autorisations du répertoire soient définies sur 2777, permettant à « www-data » de lire, d'écrire et d'exécuter, un détail crucial est souvent manqué.
Autorisation négligée : accès à l'exécution
En plus des autorisations sur le répertoire 'public_html', Nginx nécessite des autorisations d'exécution pour tous les répertoires parents dans le chemin menant au fichier. Dans ce cas, le répertoire « demo » aurait également besoin d'autorisations exécutables pour « www-data » pour accéder à n'importe quel sous-répertoire situé en dessous.
Solution recommandée
Pour résoudre le problème problème, l'utilisateur doit vérifier les autorisations de tous les répertoires parents pour s'assurer que « www-data » dispose d'un accès en exécution. En règle générale, une simple commande telle que « chmod o x /path/to/parentDirectory » suffirait à ajouter des autorisations exécutables pour les « autres » utilisateurs, y compris « www-data ».
Conseil de dépannage
Pour afficher rapidement toutes les autorisations sur un chemin, l'utilisateur peut utiliser la commande 'namei -om /path/to/check'. Cette sortie complète fournira une ventilation détaillée des autorisations pour chaque répertoire et fichier le long du chemin spécifié.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!