Problème de mutualisation

Bonjour,

Je cherche à mutualiser le noyau de SPIP.

J'ai suivi l'article http://www.spip.net/fr_article3514.html

J'ai mis spip dans le sous dossier /mutualise.
J'ai créé les sous dossiers /mutualise/sites/site1 et /mutualise/sites/site2 puis les quatres sous dossiers tmp, config, IMG et local dans chacun d'eux.

http://www.mondomaine.net/mutualise/site1/ecrire/ me retourne systématiquement une erreur 404 not Found.

Quelqu'un peut-il aider ?

Merci d'avance.

Roger

Voici mes fichiers .htaccess et mes_options.php

##############################################################
# Fichier .htaccess SPIP v1.9 #
# #
# Permet de controler les URLs et la version de php utilisee #
# Compatible avec les URLs 'html', 'propres' et 'propres2' #
# Permet aussi d'effectuer la transition de .PHP 3 vers .PHP #
# #
# Pour utiliser ce fichier renommez-le '.htaccess' dans le #
# repertoire racine du site, en veillant a ne pas ecraser un #
# .htaccess personnalise qui s'y trouverait deja #
# #
# Attention certains hebergeurs desactivent tout ou partie #
# des fonctions du fichier .htaccess ; celui-ci est donc #
# indicatif - en cas de difficulte voir sur les forums SPIP #
##############################################################

RewriteEngine On

################ CONFIGURATION ######################

### Configuration sous-repertoire
# Si votre site est dans un sous-repertoire, preciser ci-dessous
# le nom du sous-repertoire, et supprimer le '#'
# Chez certains hebergeurs il faut indiquer "RewriteBase /"

#RewriteBase /sous/repertoire/
RewriteBase /mutualise/

# SPIP version 'php' - si vous avez d'anciennes adresses en '.php[3]',
# supprimez le '#' sur les lignes qui suivent pour rediriger les acces
# errones vers le .php correspondant

#RewriteCond %{REQUEST_FILENAME} -f
#RewriteRule ^(.+)\.php[3]$ $1.php [QSA,L]

# Fin version
###

################ REGLAGES PERSONNALISES ######################
# Inscrivez ci-dessous vos reglages supplementaires

# Permettre a IE de reconnaitre le win_png.htc de retraitement des png transparents
AddType text/x-component .htc

# bloquer les acces aux repertoires .svn/ (SPIP, plugins, squelettes...)
RewriteRule ^(.*/)?\.svn/ - [F]

## Mutualisation
RewriteRule ^(site1|site2)$ /mutualise/$1/ [R,L]
RewriteRule ^(site1|site2)/(.*) /mutualise/$2 [QSA,L]

## Redirection
RewriteCond %{REQUEST_URI} !^/mutualise/(config|dist|ecrire|IMG|oo|plugins|sites|squelettes|tmp|local)/(.*)
RewriteRule ^[^/]+/(.*) /mutualise/$1 [QSA,L]

################ GESTIONS DES URLS SPIP #######################

###
# Si le fichier ou repertoire demande existe
# ignorer toutes les regles qui suivent
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule "." - [skip=100]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule "." - [skip=100]
#
###

###
# Compatibilite avec les URLS "html" (pour transition sympa)
# voir fichier ecrire/urls/html.php3
RewriteRule rubrique([0-9]+)\.html$ spip.php?page=rubrique&id_rubrique=$1 [QSA,L]
RewriteRule article([0-9]+)\.html$ spip.php?page=article&id_article=$1 [QSA,L]
RewriteRule breve([0-9]+)\.html$ spip.php?page=breve&id_breve=$1 [QSA,L]
RewriteRule mot([0-9]+)\.html$ spip.php?page=mot&id_mot=$1 [QSA,L]
RewriteRule auteur([0-9]+)\.html$ spip.php?page=auteur&id_auteur=$1 [QSA,L]
RewriteRule site([0-9]+)\.html$ spip.php?page=site&id_syndic=$1 [QSA,L]
# Compatibilite avec les anciennes URLS appelant directement des fichiers php
RewriteRule ^(rubrique|article|breve|mot|auteur|site|agenda|backend|backend-breves|distrib|forum|ical|plan|recherche|resume|sommaire|sommaire_texte)\.php3?$ spip.php?page=$1 [QSA,L]
RewriteRule ^page.php[3]? spip.php [QSA,L]
RewriteRule ^spip_cal\.php3?$ spip.php?action=ical [QSA,L]
RewriteRule ^spip_rss\.php3?$ spip.php?action=rss [QSA,L]
# Fin compatibilite
###

###
# URLs "propres" et "propres2"
# pensez a regler $type_urls='propres' ou 'propres2'
# dans ecrire/mes_options.php
# (fichier associe : ecrire/urls/propres.php)

# Les mots-cles
RewriteRule ^\+-[^/\.]+(-\+)?(\.html)?$ spip.php?page=mot [QSA,E=url_propre:$0,L]

# Les breves
RewriteRule ^\+[^/\.]+\+?(\.html)?$ spip.php?page=breve [QSA,E=url_propre:$0,L]

# Les rubriques
RewriteRule ^-[^/\.]+-?(\.html)?$ spip.php?page=rubrique [QSA,E=url_propre:$0,L]

# les auteurs
RewriteRule ^_[^/\.]+_?(\.html)?$ spip.php?page=auteur [QSA,E=url_propre:$0,L]

# Les sites
RewriteRule ^@[^/\.]+@?(\.html)?$ spip.php?page=site [QSA,E=url_propre:$0,L]

# Les articles (en dernier car expression plus "large")
RewriteRule ^[^/\.]+(\.html)?$ spip.php?page=article [QSA,E=url_propre:$0,L]

# Fin URLs "propres" et "propres2"
###

<?php
if ( preg_match(',/mutualise/([a-zA-Z0-9_-]+)/?,',$_SERVER['REQUEST_URI'],$r)) {

  if (is_dir($e = _DIR_RACINE . 'sites/' . $r[1]. '/')) {

      $cookie_prefix = $table_prefix = $r[1];

      define('_SPIP_PATH',
          $e . ':' .
          _DIR_RACINE .':' .
          _DIR_RACINE .'dist/:' .
          _DIR_RESTREINT);

      spip_initialisation(
          ($e . _NOM_PERMANENTS_INACCESSIBLES),
          ($e . _NOM_PERMANENTS_ACCESSIBLES),
          ($e . _NOM_TEMPORAIRES_INACCESSIBLES),
          ($e . _NOM_TEMPORAIRES_ACCESSIBLES)
          );

     $GLOBALS['dossier_squelettes'] = $e.'squelettes';

      if (is_readable($f = $e._NOM_PERMANENTS_INACCESSIBLES._NOM_CONFIG.'.php')) include($f);
  }
}
?>

t

Objet : [Spip] Problème de mutualisation

Bonjour,

Je cherche à mutualiser le noyau de SPIP.

J'ai suivi l'article Mutualisation du noyau SPIP - SPIP

J'ai mis spip dans le sous dossier /mutualise.
J'ai créé les sous dossiers /mutualise/sites/site1 et
/mutualise/sites/site2 puis les quatres sous dossiers tmp, config, IMG
et local dans chacun d'eux.

http://www.mondomaine.net/mutualise/site1/ecrire/ me retourne
systématiquement une erreur 404 not Found.

Bonjour,
A mon avis, tu devrais d abord lire ca :
http://thread.gmane.org/gmane.comp.web.spip.devel/41162
j ai pas encore teste, mais pas de doute que ca doit etre bien...
Sinon, p etre que tu as un probleme lie au fait d installer spip dans un
sous repertoire "mutualise" et est ce que le RewriteBase est permis sur ton
serveur ? Es tu sur du premier slash devant /"mutualise"... c est un peu
complique quand meme les histoires de rewrite tout ca... mais pour l
instant, il semble que tu n accedes meme pas encore a mes_option.php, donc,
le pb doit se situer au niveau du htaccess... Mais avant tout, jete un oeil
au lien du dessus...

triton

Roger (Bordeaux) a écrit :

Bonjour,

Je cherche à mutualiser le noyau de SPIP.

J'ai créé les sous dossiers /mutualise/sites/site1 et /mutualise/sites/site2

http://www.mondomaine.net/mutualise/site1/ecrire/ me retourne systématiquement une erreur 404 not Found.

## Mutualisation
RewriteRule ^(site1|site2)$ /mutualise/$1/ [R,L]
RewriteRule ^(site1|site2)/(.*) /mutualise/$2 [QSA,L]

Il y a 2 erreurs dans ton cas...
Une grosse et une petite !

La première, la petite : les lignes ci-dessous sont inutiles, mais non bloquantes je crois.
Ce n'est donc pas le plus génant (elles sont à mettre à la place des deux rewrite rules ci-dessus dans le cas ou l'on ne veux pas s'embêter avec le nom des sites...)

## Redirection
RewriteCond %{REQUEST_URI} !^/mutualise/(config|dist|ecrire|IMG|oo|plugins|sites|squelettes|tmp|local)/(.*)
RewriteRule ^[^/]+/(.*) /mutualise/$1 [QSA,L]

La deuxième, la grosse, est celle ci : site1 et site2 sont des adresses utilisées par spip pour désigner le site d'identifiant numéro 1 et 2, comme article1 et article2 ou rubrique1.... il faut donc que tu utilises d'autres noms que ceux-ci ! (test1 et test2 par exemple !)

Matthieu.

PS: Ce qui est bien de préciser aussi toujours, c'est la version de spip utilisé !?

Matthieu Marcillaud a écrit (trop vite encore une fois !) :

La deuxième, la grosse, est celle ci : site1 et site2 sont des adresses utilisées par spip pour désigner le site d'identifiant numéro 1 et 2

Cependant, je viens de tester (sur 1.9.3 dev SVN [9375]) en créant un site nomme 'site1' et ça fonctionne... Donc, ça ne doit pas être ça en fait...

Même avec les deux rewrite_rules et rewrite_cond ensemble, ça fonctionne !

Bon, questions subsidiaires du coup :
- le spip dans /mutualise fonctionne-t-il sans erreur lui ?
- le fichier mes_options est bien dans /mutualise/config/mes_options.php ?

MM.