Maison > développement back-end > tutoriel php > Pourquoi Laravel génère-t-il une erreur « file_put_contents() : échec d'ouverture du flux : autorisation refusée » ?

Pourquoi Laravel génère-t-il une erreur « file_put_contents() : échec d'ouverture du flux : autorisation refusée » ?

Linda Hamilton
Libérer: 2024-11-05 02:46:01
original
848 Les gens l'ont consulté

Why Does Laravel Throw a

Problèmes d'autorisation de fichier dans Laravel : "file_put_contents() n'a pas pu ouvrir le flux"

Rencontre avec l'erreur "file_put_contents() : échec d'ouverture du flux : autorisation refusée" dans Laravel peut être frustrant. Ce problème survient lorsque Laravel ne parvient pas à écrire dans des fichiers ou des répertoires spécifiques en raison d'autorisations de fichiers insuffisantes.

Le répertoire de stockage, dans lequel Laravel stocke les journaux, le cache et d'autres données importantes, provoque souvent cette erreur. Pour le résoudre, explorons différentes solutions.

Résoudre le problème

Selon vsmoraes, la séquence de commandes suivante peut résoudre les problèmes liés aux autorisations :

Pour Laravel >= 5.4 :

<code class="sh">php artisan cache:clear
chmod -R 775 storage/
composer dump-autoload</code>
Copier après la connexion

Pour Laravel < 5.4 :

<code class="sh">php artisan cache:clear
chmod -R 775 app/storage
composer dump-autoload</code>
Copier après la connexion

Ces commandes effectuent les tâches suivantes :

  1. Vider le cache de l'application pour supprimer tous les fichiers en cache corrompus ou obsolètes.
  2. Modifier les autorisations du répertoire de stockage sur 775, permettant au serveur Web d'y écrire.
  3. Exécutez Composer pour mettre à jour le chargeur automatique et refléter les modifications apportées aux autorisations de fichiers.

Une fois que vous avez exécuté ces commandes, l'erreur « file_put_contents() : échec d'ouverture du flux : autorisation refusée » ne devrait plus apparaître. Si vous continuez à rencontrer des problèmes, vérifiez les autorisations de fichiers spécifiques dans le répertoire de stockage, tels que le fichier "meta/services.json" mentionné dans votre question. Assurez-vous que les fichiers disposent des autorisations appropriées (par exemple, 644) pour permettre à l'application Laravel de les lire et d'y écrire.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal