mauvaise écriture d'url sur une install multisite

Information importante

En raison d'un grand nombre d'inscriptions de spammers sur notre site, polluant sans relache notre forum, nous suspendons la création de compte via le formulaire de "sign up".

Il est néanmoins toujours possible de devenir adhérent•e en faisant la demande sur cette page, rubrique "Inscription" : https://www.drupal.fr/contact


De plus, le forum est désormais "interdit en écriture". Il n'est plus autorisé d'y écrire un sujet/billet/commentaire.

Pour contacter la communauté, merci de rejoindre le slack "drupalfrance".

Si vous voulez contacter le bureau de l'association, utilisez le formulaire disponible ici, ou envoyez-nous un DM sur twitter.

Bonjour,

Je cherche un petit brin d'explication sur une mise en place propre d'un site situé dans un répertoire. Il y a cependant beaucoup de littérature et je n'ai pas trouvé mon compte ...

J'utilise Drupal 7 (avec clean url et pathauto) et suis hébergé chez OVH.
j'héberge 2 sites :
- mondomaine.org
-dev.mondomaine.org
Le répertoire rep sous www héberge le code drupal
ds www/rep/sites j'ai le répertoire default, le répertoire dev.mondomaine.org.

J'ai mis un .htaccess sous www avec un Redirectmatch permanent ^/$ http://mondomaine.org/rep/ et un autre pour dev.mondomaine.org et modifié le .htaccess sous rep avec un RewriteBase /rep.

1 Cela marche presque bien pour mondomaine.org : seul pb je n'arrive pas à éliminer le "rep" de mes url qui ont la forme mondomaine/rep/articlexxxx

2 je n'ai pas accès à mon site dev.mondomaine.org malgré la déclaration de sous-domaine (vers www/rep faite ds le manager OVH

Si quelqu'un a des idées ...

Merci

Version de Drupal : 

Bonjour,

je pense que rep est de trop.
Pour gérer des sous-domaines, tu dois reprendre exactement l'architecture que tu trouves sous le drupal-7.x que tu as téléchargé.
Donc, si tu as directement le code Drupal sous www (ce qui revient à avoir renommé drupal-7.xdrupal-7.x en www), tu dois avoir au même niveau le répertoire sites.
Et sous sites, les domaine et sous-domaines, soit:

www
  install.php
  index.php
  ...
  <modules>
  <sites>
    <all>
    <default>
    <www.mondomaine.org>
    <www.dev.mondomaine.org>

<< default>> ne doit pas comporter de fichier settings.php lorsque tu veux avoir des sous-domaines (principe de l'installation multisites)
Par contre tu dois avoir les fichiers default.settings.php et settings.php dans chacun des répertoires correspondant à un domaine ou sous-domaine.

A consulter: http://drupalfr.org/node/6171
http://drupalfr.org/forum/support/support-general/847-resoluexplications...
et tout un tas d'autres. Mais à lire à tête reposée, et pour ma part avec un papier et un crayon pour redessiner les différentes architectures.

Bonjour,

Merci de ta réponse;
J'avais effectivement lu ces posts et d'autres mais d'une part ils sont en Drupal 6 qui est plus simple à gérer ou plutôt à comprendre. Drupal 7 demande notamment la présence d'un fichier sites.php ds le répertoire site de Drupal ds lequel si j'ai bien compris on indique aussi vers quel répertoire doivent pointer tous les sites.
Tu as raison : le fait de mettre Drupal dans un répertoire au lieu de le mettre directement ss www ajoute à la complexite; c'est pourtant un conseil que l'on retrouve ds de nombreux posts...
Ce qui est certain c'est que tous les sites doivent être répertoriés avec un nom de répertoire - sauf éventuellement celui du domaine principal qui peut correspondre au répertoire Default et là par contre pour moi il faut un setting.php ds default ne serait-ce que pr lui indiquer la BD. Je ne sais pas par contre comment gérer le "base url" en fonction du fichier sites, de l'adresse du sous-domaine et ds mon cas du fichier rep ...
si tu as des idées ...
merci beaucoup pour ta réponse

Effectivement, j'ai fait du multisite en D6.
Je n'avais pas vu le sites.php de D7, et sa notion d'alias.
En D6, pour faire du multisite, il ne faut pas utiliser default, sinon tu es coincé pour les sous-domaines, et j'avais trouvé un tutoriel où il est même conseillé pour un domaine unique de le paramétrer comme un multisite (donc rien dans default), on n'est pas coincé le jour où l'on veut rajouter un sous-domaine.
Je ne me suis pas penchée sur la question en D7, mais j'ai appliqué ce principe sur deux sites en D7 qui est pour le moment unique. Les install se sont bien passées.
Concernant le base url, je l'avais utilisé (en D6) en multisite, mais ça me causait des problèmes de déconnexion d'utilisateur entre les sous-domaines, car je partageais la table user et la table session, peut-être un mauvais paramétrage; je fonctionne sans.
Concernant le répertoire que tu mets directement sous www, si je me souviens bien de ce que j'ai lu, il faut dans ce cas que toute ton install Drupal soit dans ce répertoire. C'est à dire que tu as soit l'install décrite dans mon premeir post, soit la même chose avec rep en plus:

www
  <rep>
    install.php
    index.php
    ...
    <modules>
    <sites>
      <all>
      <default>
      <www.mondomaine.org>
      <www.dev.mondomaine.org>

Dans aucun des cas, tu ne dois intercaler rep entre les fichiers de fonctionnement de Drupal et les répertoires de base tels que sites, module...
Et après, ça doit être au niveau de ton hébergeur que tu fais pointer ton nom de domaine sur www/rep au lieu de la racine www.
Je te donne toutes ces infos de mémoire, excuse-moi s'il y a quelques erreurs.
Un autre lien:
http://drupalfr.org/book/export/html/6171
Attention, c'est encore du D6.
Quand tu auras avancé, merci de faire un retour de ton expérience.