Avez-vous déjà essayé d’actualiser votre site Web Joomla et vous avez cette erreur :
"Une erreur s'est produite. 0 Impossible d'ouvrir le fichier pour écrire le journal"
Ne vous inquiétez pas, vous n’êtes pas seul, cela peut arriver pour différentes raisons. Voici quelques-uns d’entre eux et des solutions pour résoudre chacun d’eux.
Si vous rencontrez des problèmes avec la mise à jour du backend, vous ne pourrez probablement pas le faire, alors ouvrez le fichier “configuration.php” et trouvez le chemin des dossiers tmp ou log et remplacez-le par le bon chemin.
Voici un exemple de chemin d’accès au dossier Log et tmp :
*/home/**votrenom d'utilisateur**/public_html/logs*
ou
*/home/**votrenom d'utilisateur**/public_html/administrator/logs*
*/home/**votrenom d'utilisateur**/public_html/tmp*
1. Problème d’autorisation
Assurez-vous que tous les fichiers et dossiers à l’exception du fichier global configuration.php sont accessibles en écriture. Si ce n’est pas le cas, vous devrez modifier les autorisations afin que tous les dossiers soient définis sur 755 et que les fichiers soient définis sur 644.
Pour vérifier l’autorisation dans le backend Joomla, accédez à :
Système (menu supérieur) >> Informations système >> Autorisations de répertoire
Vous pouvez soit le faire en utilisant un client FTP tel que FileZilla, SSH ou une extension Joomla telle que Outils d’administration.
J’utilise habituellement SSH et voici les permissions normales de n’importe quel site Joomla, pensez à aller dans le dossier du projet avant d’exécuter ces 2 commandes.
trouver -type d -exec chmod 755 {} \;
trouver -type f -exec chmod 644 {} \;
Les extensions d’outils d’administration sont vraiment utiles car vous n’êtes pas familier avec SSH, mais même si vous l’êtes, les outils d’administration pour Joomla sont une bonne option pour ajouter une protection à votre site Web Joomla ou WordPress.
Ne définissez pas l’autorisation sur 777 !
2. Chemins de répertoire incorrects pour les répertoires Tmp/Log, définis dans le fichier de configuration
Vous devez configurer votre dossier “/log” et ou “/tmp” pour un lien absolu de votre serveur, dans le backend de Joomla.
Pour vérifier/modifier le chemin, dans le backend Joomla, accédez à Configuration globale, puis choisissez l’onglet Serveur et vérifiez si le dossier Path to Log est correct :
- journal : $log_path
- tmp : $tmp_path
Si vous n’êtes pas sûr de votre chemin, créez un fichier .php et collez ce code pour savoir quel est le chemin absolu vers votre serveur. Téléchargez et appelez-le sur votre navigateur : ex :www.domaine.com/chemin.php, voici le code :
$path = getcwd();
echo "Votre chemin absolu est :" . $chemin ;
3. Répertoires et propriété des fichiers
Vérifiez la propriété du dossier, il peut être défini sur root:root et cela peut être défini à partir de votre dossier /var/www/html.
Un problème survient si vous souhaitez écrire quelque chose dans des fichiers de votre site Web (modifier des fichiers existants ou télécharger de nouveaux fichiers). Les privilèges root ne vous permettraient pas de le faire.
Pour résoudre ce problème, vous devez définir la propriété sur www-data:www-data ou apache:apache.
Vous devez faire attention à ne définir les autorisations www-data ou apache que sur les répertoires (fichiers) que vous devez modifier à partir du site Web.
Le définir sur /var/www/html ou même /var/www n’est pas recommandé car il s’agit d’un gros trou de sécurité.
Si vous avez besoin d’aide pour le développement Web, n’hésitez pas à contactez nos experts en développement web. Nous dirigeons la meilleure agence de développement Web sur mesure à Montréal.