Submitted by crip-dev on
Je vais dupliquer mon drupal du site test vers le site prod. J'ai un server test et un serveur prod pour mes pages, et un unique serveur de bdd avec une base test et une base prod.
Lors d'une discussion au mois d'octobre, on m'a dit "il suffit de dupliquer tes tables de la base test vers la base prod, et de dupliquer les pages du serveur test vers le serveur prod...."
Or le nom de la bdd associée est différent, et il me faudra probablement retoucher un fichier php dans lequel sont stockées les infos de connexion bdd pour mettre le nom de la base prod (sinon on irait toujours dans la base test !)
Quel est le fichier php du coeur de mon drupal 6.19 qui contient le nom de la bdd associée ? merci de me donner le chemin vers le ou les fichier(s) où je dois effectuer cette modif
Thx
Salut, Le fichier que tu
Permalien Soumis par drupalfrance le 8 Novembre, 2010 - 10:15
Salut,
Le fichier que tu veux modifier est :
sites/default/settings.php
Il y a une ligne dans ce fichier qui commence par :
$db_url = ...
qui contient toutes les informations de connexion à la BDD (nom de la base, mot de passe...).
C’est exactement l’info dont
Permalien Soumis par crip-dev le 8 Novembre, 2010 - 10:38
C'est exactement l'info dont j'avais besoin : une fois dupliquées mes tablesvers ma base prod et envoyé tous mes fichiers de site test vers le serveur prod, je n'aurai donc logiquement que cette ligne à modifier pour que le site prod foctionne.
Thx
En fait, y a encore mieux :
Permalien Soumis par drupalfrance le 8 Novembre, 2010 - 10:58
En fait, y a encore mieux : tu peux garder en permanence deux fichiers
settings.php
. L'un contiendra les infos du site de dévt, l'autre les infos du site de prod. Ça t'évite de devoir modifier le fichier à chaque passage en production.Prenons un exemple : ton site de dévt est un site que tu développes sur ta machine locale et auquel tu accèdes via http://localhost, et ton site de prod est sur http://www.monsite.com.
Il te suffit d'organiser les fichiers
settings.php
de la façon suivante sur ton serveur :/sites
/all
/modules
/themes
/defaut
... // ici, tu ne mets rien
/localhost
settings.php // infos pour le dévt
/www.monsite.com
settings.php // infos pour la prod
Il n'y a rien d'autre à faire que de créer les bons répertoires (il faut nommer les répertoires comme les domaines via lesquels tu accèdes à ton site). C'est ensuite Drupal qui se chargera d'utiliser le bon
settings.php
en fonction du domaine via lequel tu accèdes à ton site.C’est certes très astucieux,
Permalien Soumis par crip-dev le 8 Novembre, 2010 - 11:27
C'est certes très astucieux, mais l'infrastructure de mon établissement impose
-un site test ET un site prod distincts, accessibles par samba sur serveur Apache
-1 serveur bdd distinct avec une base test et une base prod
(je n'ai pas le choix)
Je me suis peut-être mal
Permalien Soumis par drupalfrance le 8 Novembre, 2010 - 11:41
Je me suis peut-être mal expliqué : la seule chose que fait le code que je t'ai montré, c'est de t'éviter de "bidouiller" ton fichier
settings.php
à chaque fois que tu passes de test en prod, en te permettant de maintenir deux copies distinctes du fichiersettings.php
(une pour le test, une pour la prod).A part ça, cela ne change rien à ton architecture (il y a toujours deux bases de données, deux serveurs différents pour le test et la prod...).
C’est bien ce que j’avais
Permalien Soumis par crip-dev le 8 Novembre, 2010 - 12:17
C'est bien ce que j'avais pigé mais ce que je veux dire, c'est que l'établissement tient à ce que les sites test et prod coexistent et que tout le monde (y compris les rédacteurs de CMS) fasse le travail sur le site test JUSQU'A SATISFACTION avant de le refaire sur le site prod de façon définitive. Cette gestion est certe lourde mais nous évite des problèmes en prod.
Je ne bidouillerai mon settings.php qu'une fois pour toute lors de la création du site prod