Dotclear

Ticket #344 (closed defect: fixed)

Opened 16 years ago

Last modified 11 years ago

Unable to create directory.

Reported by: Moe Owned by: xave
Priority: normal Milestone: 2.6
Component: module:core Version: 2.0 RC2
Severity: normal Keywords:
Cc:

Description

Bonjour,
il y a une erreur qui revient souvent dans le forum : Unable to create directory.

Je pense que ça pourrait être pratique d'afficher le chemin du répertoire dans l'erreur pour pouvoir le retrouver plus facilement et changer ses droits, etc.

Il faudrait modifier la ligne 232 de /dotclear/inc/clearbricks/common/lib.files.php :

throw new Exception(__('Unable to create directory :').' '.$f);

Mais peut-être que ça serait gênant d'afficher l'arborescence côté public ... où afficher le chemin alors ? Dans les logs d'erreur de Dotclear ? Il paraît que la table SQL dc_log attend du boulot. :)

Change History

comment:1 in reply to: ↑ description Changed 16 years ago by sacha

Replying to Moe:

Il paraît que la table SQL dc_log attend du boulot. :)

Je pourrais m'en occuper ce week-end sur mon lieu de vacances, mais il se peut que je n'aurais accès à internet que dès le 30 juillet.

comment:2 follow-up: ↓ 3 Changed 16 years ago by Moe

Après mûre réflexion, je crois que mon idée initiale est une mauvaise solution à un vrai problème. Étant donné que le répertoire cache est défini dans le fichier de configuration, le chemin est forcément connu par l'utilisateur. Mais le problème de cache non accessible en écriture reste et laisse perplexe les utilisateurs et les autres (voir le forum). On pourrait tester que l'utilisateur Apache soit le même que le propriétaire du répertoire cache (c'est impossible sous Windows mais je ne crois pas qu'un Windows desktop implémente la gestion des droits) et que les droits sont bons (encore une fois, faut voir avec Windows ). Je ne vois pas de solution simple ...

Quant aux logs, c'est un autre débat, je n'aurais pas dû mélanger les deux dans mon ticket. Désolé.

comment:3 in reply to: ↑ 2 Changed 16 years ago by Moe

Replying to Moe:

On pourrait tester que l'utilisateur Apache soit le même que le propriétaire du répertoire cache (c'est impossible sous Windows mais je ne crois pas qu'un Windows desktop implémente la gestion des droits) et que les droits sont bons (encore une fois, faut voir avec Windows ).

J'ai implémenté ça dans  Informations 1.4. Un plugin DC1 permettait d'exporter des infos essentielles à communiquer sur le forum en cas de problème, j'essaye de faire la même chose pour Dotclear 2.

comment:4 Changed 16 years ago by olivier

Quel est le contexte de ces erreurs ?

comment:5 Changed 16 years ago by Moe

Je ne te suis pas là, le contexte ?

Le plugin affiche des erreurs sur une page dédiée dans l'administration, si l'URL est mal configurée ou si les répertoires public, cache, etc. n'existent pas ou ne sont pas accessibles en écriture. Voici le plugin :  http://gniark.net/dotclear-files/public/plugins/plugin-info-1.4.zip

comment:6 Changed 16 years ago by olivier

Je parle pas du plugin, je parle du contexte des erreurs :)

comment:7 follow-up: ↓ 8 Changed 16 years ago by Moe

J'avais une chance sur deux. :)

Le contexte, euh, dernièrement on a eu  http://forum.dotclear.net/viewtopic.php?id=34599 et il y a pas mal d'autres threads parlant de la même erreur chez divers hébergeurs.

comment:8 in reply to: ↑ 7 Changed 16 years ago by Moe

Replying to Moe:

Le contexte, euh, dernièrement on a eu  http://forum.dotclear.net/viewtopic.php?id=34599

L'utilisateur concerné par ce problème m'a envoyé des informations, le plugin Informations renvoie que tout est ok, les répertoires cache, etc. répondent positivement à is_dir(), is_writable() et is_readable(). Par contre le safe_mode est activé sur son hébergement. Dotclear 2 est compatible avec ce mode ? Son activation n'est pas dans le script de test de Dotclear 2.0. Quand je vois [la liste des fonctions désactivées  http://fr2.php.net/manual/fr/features.safe-mode.functions.php], je me dis que effectivement, Dotclear 2.0 aura quelques soucis. Tu confirmes ?

comment:9 Changed 16 years ago by olivier

  • Milestone 2.0 deleted

En l'absence de solution, ça passe à plus tard et il restera à trancher si Dotclear 2 est compatible safe mode ou pas.

comment:10 Changed 13 years ago by kozlika

Moe, tu crois que ça serait intéressant d'intégrer le plugin Informations dans la distrib ?

comment:11 Changed 13 years ago by Moe

Dans la mesure où le plugin ne sera pas utilisé par tout le monde, je préfère qu'il reste un plugin à part, installé au besoin.

comment:12 Changed 13 years ago by franck

  • Owner changed from olivier to xave
  • Status changed from new to reviewing

comment:13 Changed 13 years ago by Osku

Pour la micromodif' dans clearbricks, suis pour.

Pour le reste et dcLog, pas d'avis

comment:14 Changed 13 years ago by philippe

Si on affiche le chemin du dossier qui n'a pas pu être créé dans l'admin, c'est bien utile. Il faut juste être sûrs que ça n'affichera rien de compromettant côté public, ce qui semblait inquiéter Moe mais je ne vois pas dans quel cas ça arriverait...

comment:15 Changed 13 years ago by JcDenis

Heu, je ne veux pas être méchant mais, si le problème était corrigé plutôt que de chercher comment afficher l'erreur ? Donc blindage des tests d'install, et ajout de test aux endroits ou l'écriture de fichier est utilisé ou modif de clearbricks.

(Perso je peux pas le faire, la, j'ai piscine)

comment:16 Changed 13 years ago by xave

On peut faire un basename, voire une traduction (donc '../cache/' ou 'le répertoire de cache')

comment:17 Changed 11 years ago by franck

  • Milestone set to A definir

comment:18 Changed 11 years ago by franck

Note : le safe_mode est obsolète dans PHP 5.3 et supprimé dans PHP 5.4; conclusion il suffit d'attendre encore un peu :-p

comment:19 Changed 11 years ago by franck

Sera (probablement) réglé quand le ticket #1406 sera corrigé.

comment:20 Changed 11 years ago by franck

  • Status changed from reviewing to closed
  • Resolution set to fixed
  • Milestone changed from A definir to 2.6
Note: See TracTickets for help on using tickets.

Sites map