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

Répondre à