Fork me on GitHub




(1) 2 3 4 »


XOOPS 2.5 - A propos de l'installation / de la mise à jour
Guest_
b'soir

Il semble qu'il y ait quelques différences mineures entre Xoops 2.4.x et Xoops 2.5 à propos de la procédure d'installation. Je me permets donc d'ouvrir ce sujet spécifique, en fonction des difficultés cela permettra peut être de faire un tutoriel

Bref, j'ai déjà noté 2 différences concernant la procédure de mise à jour :

1 • les dossiers /xoops_libs et /xoops_data de la version Xoops 2.5 doivent impérativement - si j'ai bien compris - être utilisés. C'est à dire qu'il faut écraser les dossiers existants lors de la procédure d'upgrade.
-> /xoops_libs : parce qu'il contient des scripts jquery permettant de faire fonctionner le drag'n'drop du back office
-> /xoops_data : parce qu'il contient - par souci de sécurité - certaines informations placées dans les versions antérieures dans le fichier mainfile.php

2 • il faut modifier manuellement le fichier mainfile.php après la mise à jour (faire un comparaison entre celui de l'ancienne version du site et celui généré par un Xoops 2.5RC à l'installation ?)

J'ai bon ?!


Si oui je mets à jour l'explication donnée dans ce post (#50)


Procédure de mise à jour

Préparation : faire une sauvegarde intégrale de ton site (fichiers et bases de données)

1. Accéder à son site et se connecter en tant qu'administrateur (à faire en premier, ce sera plus simple pour la suite en 3.)

2. Manipulation de l'archive de Xoops 2.5RC :
- Copier le dossier /upgrade dans le répertoire /htdocs
- Dans le dossier /htdocs, supprimer les dossiers /install, /cache, /template_c, /uploads et /themes
- Supprimer le fichier mainfile.php ... pas certain
- une fois fait, copie le contenu du répertoire /htdocs dans le répertoire /www/... contenant ton site. Confirme l'écrasement des fichiers et des dossiers lorsque cela t'es demandé

3. Procédure d'upgrade :
- appeler l'url http://nom-de-ton-site.com/upgrade/
- clique sur suivant à chaque fois (prend le temps de lire si tu n'es pas habitué à cette procédure, cela peut servir)


---

Là où je ne comprends pas, c'est comment avoir un mainfile.php version 2.5 ? Parce que c'est à l'installation que ce fichier se complète, mais la mise à jour ne le modifie pas (d'ailleurs si on conserve la version originale du fichier mainfile, le site tourne encore)

Je lis l'information donnée par Kris (#53) :
Citation :
Détail important concernant la 2.5.0, depuis la version beta, certaines informations qui étaient dans le fichier mainfile.php, sont maintenant dans xoops_data/data/secure.php
Ces éléments concernent principalement les informations de la base de données et le charset utilisé sur le site.



Posté le : 21/10/2010 23:19
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Semi pro
Inscrit: 13/12/2004 11:28
De Lyon
Messages: 1364
Il ne faut pas supprimer le mainfile.
La procédure est la meme qu'avant mais il faut comme tu le dis bien mettre xoops_lib et xoops_data.
Dans un update, le fichier secure.php de xoops_data/data n'est pas mis a jour, c'est a l'utilisateur de le faire manuellement si il le souhaite.

MusS

Posté le : 21/10/2010 23:29
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Semi pro
Inscrit: 08/06/2005 17:15
De Where ?
Messages: 513
Concernant la procédure de burning :
1/ yep, préférable
2/ dans l'archive xoops 2.5.0
- concernant le dossier "themes", supprimer uniquement les thèmes que vous avez modifiés - attention toutefois, ces thèmes ont également été modifiés pour cette 2.5.0, par exemple la barre d'admin de zetagenesis et quelques corrections dans les fichiers css
- mainfile.php = oui à supprimer
- si votre site possède un fichier include/license.php, celui de l'archive 2.5.0 devra également être supprimé
3/ yep tout à fait, clic, clic et clic ...

Mais lors de la publication de la version finale, une article avec une procédure détaillée sera rédigée

Nota : Pour la mise à jour, si xoops.org ne fait pas quelques packs de mise à jour, j'en proposerai pour les utilisateurs francophones afin de faire un passage en douceur à la 2.5.0

Posté le : 21/10/2010 23:44
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Guest_
Donc pour la mise à jour on fait presque comme d'habitude.

Désolé pour la redite mais ça rentre mieux en l'écrivant :
• on utilise impérativement le dossier /xoops_libs, en faisant gaffe que la version de Protector est la même que celle employée sur le site
• on utilise également le dossier /xoops_data (cela dit j'ai fait une mise à jour sans utiliser ce dossier livré avec Xoops 2.5RC et cela semble fonctionner quand même)
• pour sécuriser davantage le site, à la fin de l'upgrade on fait une manipulation concernant les fichiers mainfile.php et secure.php.

Merci MusS pour ces éclaircissements :)


Je pense que dans le cadre d'un Guide d'installation / de mise à jour de Xoops, un exemple de mainfile.php et de secure.php complets (tels que configurés à la fin de l'installation d'un Xoops 2.5) serait utile.

Toujours au cas où quelqu'un serait motivé pour la rédaction d'un tel Guide


---

Citation :
si votre site possède un fichier include/license.php, celui de l'archive 2.5.0 devra également être supprimé

... c'est noté :)

Posté le : 21/10/2010 23:44
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Semi pro
Inscrit: 08/06/2005 17:15
De Where ?
Messages: 513
un mainfile.php d'une installation en local
<?php
/**
 * XOOPS main configuration file
 *
 * You may not change or alter any portion of this comment or credits
 * of supporting developers from this source code or any supporting source code
 * which is considered copyrighted (c) material of the original comment or credit authors.
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * @copyright   The XOOPS Project http://sourceforge.net/projects/xoops/
 * @license     GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
 * @version     $Id: mainfile.dist.php 5192 2010-09-06 09:00:36Z forxoops $
 */

if (!defined("XOOPS_MAINFILE_INCLUDED")) {
    
define("XOOPS_MAINFILE_INCLUDED"1);

    
// XOOPS Physical Paths

    // Physical path to the XOOPS documents (served) directory WITHOUT trailing slash
    
define('XOOPS_ROOT_PATH''C:/UniServer/www/250rcfr');

    
// For forward compatibility
    // Physical path to the XOOPS library directory WITHOUT trailing slash
    
define('XOOPS_PATH''C:/UniServer/www/250rcfr/xoops_lib');
    
// Physical path to the XOOPS datafiles (writable) directory WITHOUT trailing slash
    
define('XOOPS_VAR_PATH''C:/UniServer/www/250rcfr/xoops_data');
    
// Alias of XOOPS_PATH, for compatibility, temporary solution
    
define("XOOPS_TRUST_PATH"XOOPS_PATH);

    
// URL Association for SSL and Protocol Compatibility
    
$http 'http://';
    if (!empty(
$_SERVER['HTTPS'])) {
        
$http = ($_SERVER['HTTPS']=='on') ? 'https://' 'http://';
    }
    
define('XOOPS_PROT'$http);

    
// XOOPS Virtual Path (URL)
    // Virtual path to your main XOOPS directory WITHOUT trailing slash
    // Example: define('XOOPS_URL', 'http://127.0.0.1/250rcfr');
    
define('XOOPS_URL''http://127.0.0.1/250rcfr');

    
// Shall be handled later, don't forget!
    
define("XOOPS_CHECK_PATH"0);
    
// Protect against external scripts execution if safe mode is not enabled
    
if (XOOPS_CHECK_PATH && !@ini_get("safe_mode")) {
        if (
function_exists("debug_backtrace")) {
            
$xoopsScriptPath debug_backtrace();
            if (!
count($xoopsScriptPath)) {
                 die(
"XOOPS path check: this file cannot be requested directly");
            }
            
$xoopsScriptPath $xoopsScriptPath[0]["file"];
        } else {
            
$xoopsScriptPath = isset($_SERVER["PATH_TRANSLATED"]) ? $_SERVER["PATH_TRANSLATED"] :  $_SERVER["SCRIPT_FILENAME"];
        }
        if (
DIRECTORY_SEPARATOR != "/") {
            
// IIS6 may double the  chars
            
$xoopsScriptPath str_replace(strpos($xoopsScriptPath"\"2) ? "\" DIRECTORY_SEPARATOR"/"$xoopsScriptPath);
        }
        if (
strcasecmp(substr($xoopsScriptPath0strlen(XOOPS_ROOT_PATH)), str_replace(DIRECTORY_SEPARATOR"/"XOOPS_ROOT_PATH))) {
             exit(
"XOOPS path check: Script is not inside XOOPS_ROOT_PATH and cannot run.");
        }
    }

    
// Secure file
    
require XOOPS_VAR_PATH '/data/secure.php';

    
define('XOOPS_GROUP_ADMIN''1');
    
define('XOOPS_GROUP_USERS''2');
    
define('XOOPS_GROUP_ANONYMOUS''3');

    if (!isset(
$xoopsOption["nocommon"]) && XOOPS_ROOT_PATH != "") {
        include 
XOOPS_ROOT_PATH."/include/common.php";
    }

}

?>

Posté le : 21/10/2010 23:46
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Semi pro
Inscrit: 08/06/2005 17:15
De Where ?
Messages: 513
un xoops_data/data/secure.php d'une installation en local :
<?php
/**
 * XOOPS secure file
 *
 * You may not change or alter any portion of this comment or credits
 * of supporting developers from this source code or any supporting source code
 * which is considered copyrighted (c) material of the original comment or credit authors.
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * @copyright   The XOOPS Project http://sourceforge.net/projects/xoops/
 * @license     GNU GPL 2 (http://www.gnu.org/licenses/old-licenses/gpl-2.0.html)
 * @version     $Id$
 */

// Database
// Choose the database to be used
define('XOOPS_DB_TYPE''mysql');

// Set the database charset if applicable
if (defined("XOOPS_DB_CHARSET")) die('Restricted Access');
define('XOOPS_DB_CHARSET''utf8');

// Table Prefix
// This prefix will be added to all new tables created to avoid name conflict in the database. If you are unsure, just use the default "xoops".
define('XOOPS_DB_PREFIX''x53c');

// Database Hostname
// Hostname of the database server. If you are unsure, "localhost" works in most cases.
define('XOOPS_DB_HOST''localhost');

// Database Username
// Your database user account on the host
define('XOOPS_DB_USER''root');

// Database Password
// Password for your database user account
define('XOOPS_DB_PASS''root');

// Database Name
// The name of database on the host. The installer will attempt to create the database if not exist
define('XOOPS_DB_NAME''x250rcfr');

// Use persistent connection? (Yes=1 No=0)
// Default is "Yes". Choose "Yes" if you are unsure.
define('XOOPS_DB_PCONNECT'0);

?>

Posté le : 21/10/2010 23:48
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Guest_
Cool, merci pour cet exemple... effectivement, c'est assez "cosmétique" comme changement. Pas trop difficile pour réaliser la manipulation :)

Posté le : 21/10/2010 23:49
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Semi pro
Inscrit: 08/06/2005 17:15
De Where ?
Messages: 513
Pour résumer simplement, dans votre mainfile.php, vous déplacez les informations (en exemple) ci-dessous dans secure.php
// Database
    // Choose the database to be used
    
define'XOOPS_DB_TYPE''mysql' );

    
// Set the database charset if applicable
    
if (defined("XOOPS_DB_CHARSET")) die('Restricted Access');
    
define'XOOPS_DB_CHARSET''utf8' );

    
// Table Prefix
    // This prefix will be added to all new tables created to avoid name conflict in the database. If you are unsure, just use the default "xoops".
    
define'XOOPS_DB_PREFIX''x41e' );

    
// Database Hostname
    // Hostname of the database server. If you are unsure, "localhost" works in most cases.
    
define'XOOPS_DB_HOST''localhost' );

    
// Database Username
    // Your database user account on the host
    
define'XOOPS_DB_USER''root' );

    
// Database Password
    // Password for your database user account
    
define'XOOPS_DB_PASS''root' );

    
// Database Name
    // The name of database on the host. The installer will attempt to create the database if not exist
    
define'XOOPS_DB_NAME''ajeter1' );

    
// Use persistent connection? (Yes=1 No=0)
    // Default is "Yes". Choose "Yes" if you are unsure.
    
define'XOOPS_DB_PCONNECT');

que vous remplacez dans mainfile.php par :
// Secure file
    
require XOOPS_VAR_PATH '/data/secure.php';

et vous remettez ensuite les permissions de lecture seule sur mainfile.php et secure.php

Posté le : 22/10/2010 00:06
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Semi pro
Inscrit: 13/12/2004 11:28
De Lyon
Messages: 1364
Une autre précision, puisque le module system a conne pas mal de changement et que des fichiers ne sont plus utiliser, il est préférable de supprimer le module et de le remplacer par celui du package.
Ca seras plus propre

MusS

Posté le : 22/10/2010 12:25
Partager Twitter Partagez cette article sur GG+
Re: XOOPS 2.5 - A propos de l'installation / de la mise à jour
Guest_
b'jour MusS,

Merci pour cette précision.

Donc si on récapitule (bcp de redites de ma part mais bon, ce sera peut être plus facile ensuite pour faire un guide ou ajouter une note lorsque la version finale sera publiée).

---

Note : les explications suivantes supposent que votre site se trouve dans un environnement local et à la racine du serveur, dans le dossier /www. Vous devrez donc adapter les url indiquées en fonction de la situation réelle du site à mettre à jour.


1e étape : préparation du site en vue de la mise à jour

1. Indispensable : faire une sauvegarde intégrale du site (fichiers et base de données). Idéalement, procéder à la mise à jour du site en local et sur une réplique du site.
2. Se connecter en tant qu'administrateur
3. Vérifier la version du module Protector, elle doit coïncider avec celle livrée avec Xoops 2.5 (à savoir Protector 3.40). Si la version de Protector diffère, désinstaller le module et supprimer ses 2 dossiers, www/modules/protector et www/xoops_libs/modules/protector (pas sûr que ce soit la meilleure façon de faire)
4. Supprimer le dossier www/modules/system. Attention toutefois : les webmasters qui ont personnalisé leur interface d'administration devront pensé à récupéré le dossier dans la copie de sauvegarde du site.


2e étape : préparation du dossier /htdocs de mise à jour

1. Dézipper l'archive de Xoops 2.5
2. Copier le dossier /upgrade dans /htdocs
3. Supprimer les dossiers et fichiers inutiles pour la mise à jour, à savoir :
- dossier htdocs/cache
- dossier htdocs/template_c
- dossier htdocs/themes
- dossier htdocs/uploads
- fichier htdocs/mainfile.php
- fichier htdocs/include/license.php (ssi ce fichier est déjà présent dans www/include/)
4. Copier le contenu du dossier /htdocs à la racine du site et à l'invite, confirmer les remplacements. Note : veiller au contenu du dossier /modules, il contient notamment les modules /pm (message privés) et /profile. Si le webmestre a réalisé des modifications sur ces modules, il est conseillé de les supprimer de /htdocs/modules/ avant la copie.


3e étape : exécuter la procédure de mise à jour

1. Appeler l'url http://localhost/upgrade/ (à supposer que le site se situe à la racine du serveur local)
2. Suivre les étapes de mise à jour (combien ?) en cliquant systématiquement sur Suivant
3. A la fin de la procédure de mise à jour, se rendre dans le Panel d'administration des modules et mettre à jour les modules eux-mêmes :
- le module System
- le module PM
- le module Profile
- le module Protector (si la version d'origine est inférieure à celle livrée avec Xoops 2.5, c'est à dire Protector 3.40)

A ce stade, votre site est passé en version 2.5. Vous devez effectuez quelques manipulations supplémentaires afin de le sécuriser davantage.


4e étape : sécurisation

1. Editer le fichier mainfile.php. Ajouter cette ligne de code à l'emplacement indiqué. Enregistrer la modification.
Citation :

// Secure file
require XOOPS_VAR_PATH . '/data/secure.php';

// Database
// Choose the database to be used
define( 'XOOPS_DB_TYPE', 'mysql' );

2. Dans le fichier mainfile.php procéder à un couper (CTRL+X) des lignes suivantes :
Citation :

// Database
// Choose the database to be used
define( 'XOOPS_DB_TYPE', 'mysql' );

// Set the database charset if applicable
if (defined("XOOPS_DB_CHARSET")) die('Restricted Access');
define( 'XOOPS_DB_CHARSET', 'utf8' );

// Table Prefix
// This prefix will be added to all new tables created to avoid name conflict in the database. If you are unsure, just use the default "xoops".
define( 'XOOPS_DB_PREFIX', 'xxxxx' );

// Database Hostname
// Hostname of the database server. If you are unsure, "localhost" works in most cases.
define( 'XOOPS_DB_HOST', 'localhost' );

// Database Username
// Your database user account on the host
define( 'XOOPS_DB_USER', 'root' );

// Database Password
// Password for your database user account
define( 'XOOPS_DB_PASS', '' );

// Database Name
// The name of database on the host. The installer will attempt to create the database if not exist
define( 'XOOPS_DB_NAME', 'xxxx' );

// Use persistent connection? (Yes=1 No=0)
// Default is "Yes". Choose "Yes" if you are unsure.
define( 'XOOPS_DB_PCONNECT', 0 );

2. Editer le fichier www/xoops_data/data/secure.php. Y copier juste avant la balise ?> les lignes précédemment coupées dans mainfile.php.




C'est bon ?
J'oublie quelque chose ?
Qui c'est qui fait les screenshots ?




----
Pub :

Posté le : 22/10/2010 13:58
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 3 4 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

18 Personne(s) en ligne (15 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 18 | Plus ...