Ticket #1289 (closed defect: fixed)
Problème avec open_basedir et PHP 5.3
Reported by: | zeiram | Owned by: | xave |
---|---|---|---|
Priority: | normal | Milestone: | 2.4 |
Component: | module:clearbricks | Version: | dev |
Severity: | major | Keywords: | open_basedir, PHP5.3, filemanager |
Cc: |
Description
En PHP 5.3, lorsque les restrictions open_basedir sont activées, la classe filemanager de clearbricks génère plein de messages d'erreur :
Warning: file_exists() [function.file-exists]: open_basedir restriction in effect. File(..../dotclear/public/favicon.ico/.) is not within the allowed path(s): (.....:/tmp) in ..../dotclear/inc/libs/clearbricks/filemanager/class.filemanager.php on line 607
Note : le dossier contenant le fichier se trouve pourtant bien dans la liste des dossiers autorisés. La cause du problème vient du fait que clearbricks rajoute '/.' à la fin du nom de fichier.
La solution simple (supprimer cet ajout) semble avoir quelques effets de bord lors du déplacement de fichiers depuis le gestionnaire de médias : les miniatures restent dans le dossier d'origine plutôt que de suivre le fichier.
Attachments
Change History
comment:2 in reply to: ↑ 1 Changed 12 years ago by zeiram
Replying to zeiram:
J'ai oublié de le préciser : testé aussi bien sur la version 2.3.1 que 2.4.0 de Dotclear.
et pour référence, un fil sur le forum parlant de ce problème : http://forum.dotclear.org/viewtopic.php?id=45139
comment:3 Changed 12 years ago by zeiram
Voici un patch qui semble plus adapté : le test d'exécution n'est effectué que dans le cas d'un dossier. J'ai vérifié que le bug est toujours présent sur la 2.4.2 et patch développé et testé sur cette version.
J'ai oublié de le préciser : testé aussi bien sur la version 2.3.1 que 2.4.0 de Dotclear.