J'aurais rien contre mais apres lecture du code, ca m'est impossible. Je souligne que l'idee est de n'avoir a bidouiller aucun fichier venant de Dotclear et d'externaliser tout ce qui est config et tout le tsoin-tsoin.
Pour modifier la valeur DC_RC_PATH, il faudrait que je la change directement dans le fichier `prepend.php` ce qui va a l'encontre de ce que je cherche. Je pourrais modifier la valeur DC_RC_PATH directement dans mon fichier index.php a moi mais ca ne marcherait que pour la partie public, pas pour la partie admin. Au final, Dotclear semble simplement assigner DC_RC_PATH avec REDIRECT_DC_RC_PATH si la valeur existe, et apres recherche REDIRECT_DC_RC_PATH ne semble qu'a ce genre de cas, donc pas de bobo a premiere vue si tous les fichiers l'utilisant recoivent la meme update. 2013/9/1 Pep <[email protected]> > Bonjour, > > Tu devrais déjà essayer de jouer avec une valeur DC_RC_PATH et non > REDIRECT_DC_RC_PATH. > Tu limiteras les risques de mauvaises surprises. > > > -----Message d'origine----- > De : [email protected] [mailto:[email protected]] > De > la part de Christopher Crouzet > Envoyé : dimanche 1 septembre 2013 14:27 > À : [email protected] > Objet : [Dotclear Dev] REDIRECT_DC_RC_PATH > > Hello! > > > Est-ce que quelqu'un s'est deja servi de cette variable ? > > Mon but serait de mettre le dossier `dotclear` quelque part sous mon www/ > et > de faire en sorte de le laisser intact, comme un vrai clone de ce qu'il y a > sur le repo mercurial. > > C'est facile de definir de nouveaux chemins externes de plugins et cache > grace a `DC_PLUGINS_ROOT` et `DC_TPL_CACHE`, ainsi que les chemins public > et > themes directement dans l'admin de Dotclear, mais par contre pour le > `config.php`, c'est moins evident. > > J'ai vu que la variable `$_SERVER['REDIRECT_DC_RC_PATH']` semblait > justement > faire ca, donc je suis alle voir mon fichier .htaccess et y ai rajoute : > SetEnv REDIRECT_DC_RC_PATH /config.php > > Le truc c'est qu'ensuite Dotclear va faire un `require` la-dessus, et donc > ca va marcher seulement si le fichier .php qui est appele se trouve sur le > document root. Donc ca marche bien quand on ouvre le fichier `index.php`du > blog, mais ca ne marche plus quand on essaye d'ouvrir l'admin. > > Il y a 2 solutions : > - soit je me demerde dans le .htaccess a faire un truc du genre `SetEnv > REDIRECT_DC_RC_PATH %{DOCUMENT_ROOT}/config.php`, mais non seulement ca me > semble etre un peu du hack parceque `/config.php` devrait justement deja > representer un chemin relatif depuis le root, mais surtout j'arrive pas a > le > faire marcher... la valeur %{DOCUMENT_ROOT} (et une autre infinite de > variations que j'ai teste) ne sont pas converties en chemin, et PHP recoit > le string %{DOCUMENT_ROOT} tel quel. > - soit dans le code de Dotclear on rajoute manuellement le DocumentRoot, ce > qui me semble etre mieux. Et pour pas casser l'ancien comportement, le > fichier prepend.php serait modifie dans ce genre la : > > if (isset($_SERVER['DC_RC_PATH'])) { > define('DC_RC_PATH',$_SERVER['DC_RC_PATH']); > } elseif (isset($_SERVER['REDIRECT_DC_RC_PATH']) && > isfile($_SERVER['REDIRECT_DC_RC_PATH'])) { > define('DC_RC_PATH',$_SERVER['REDIRECT_DC_RC_PATH']); > } elseif (isset($_SERVER['REDIRECT_DC_RC_PATH']) && > isfile($_SERVER['DOCUMENT_ROOT'].$_SERVER['REDIRECT_DC_RC_PATH'])) { > define('DC_RC_PATH',$_SERVER['DOCUMENT_ROOT'] . > $_SERVER['REDIRECT_DC_RC_PATH']); > } else { > define('DC_RC_PATH',dirname(__FILE__).'/config.php'); > } > > > Des avis ? > Christopher. > -- > Dev mailing list - [email protected] - > http://ml.dotclear.org/listinfo/dev > > > > -- > Dev mailing list - [email protected] - > http://ml.dotclear.org/listinfo/dev > -- Dev mailing list - [email protected] - http://ml.dotclear.org/listinfo/dev
