Dyn2Html : Transform your dynamic web site in a simple static HTML one
     version 0.9, 2006-10-05
     Created by Alter Systems SARL, http://www.altersystems.fr
     Distributed under GPL licence

 

Documentation

Fichiers
Mais pourquoi plusieurs fichiers? Dyn2Html est compos dun seul fichier, dyn2html.php, qui peut tre appel en ligne de commande (Linux forever !?) ou via un serveur http (Apache forever !).

Cliquez ici pour le tlcharger.


Vous trouverez galement dans larchive

    * DYN2HTML.PHP : le script proprement-dit,
    * SYNCHO.SH : un fichier SHELL, qui est un exemple de la faon dautomatiser dyn2html sur un serveur Linux ou CygWin sous Windows,
    * README.TXT : la documentation de Dyn2Html,
    * LICENCE.TXT : la licence GPL.


Installation
Deux cas de figure se prsentent pour linstallation :

    * Pour une utilisation en ligne de commande : extraire le fichier dyn2html.php dans le rpertoire de votre choix et lui donner les droits pour une excution (Linux)
    * Pour une utilisation via le Web : le placer dans un rpertoire accessible de votre arborescence Web

Utilisation
Enfin, allons gnrer votre nouveau site statique !

Tout dabord, ditez le fichier dyn2html.php pour indiquer les paramtres dutilisation. Nayez peur, seules les premires 5 lignes doivent tre modifies, une version ultrieure du produit permettra la rception des paramtres en ligne de commande ou via un formulaire Web.

$LIVE_SITE="http://www.altersystems.eu";
$OUTPUT_DIR="output/";
$LINK_REPLACE_BAD= array("/","?","=","","","","","","","","",""","","","","","", "","","","","&");
$LINK_REPLACE_GOOD=array("", "" ,"" ,"e","e","e","a","a","i","u","o","" ,"a" ,"a" ,"e" ,"e" ,"e" ,"i" ,"o" ,"u" ,"c" ,"-");
$REGEX_AHREF="#

function getContent($url)
{
[...]


Dans ce fichier, modifiez :

    * $LIVE_SITE : lURL dentre sur votre site Web dynamique
    * $OUTPUT_DIR :le rpertoire local dans lequel enregistrer les fichiers HTML identifis


Enregistrez le fichier, et excutez-le :

    * En ligne de commande :  php dyn2html.php 
    * En Web :  http://votre_site_local.com/repertoires/dyn2html.php 


Dyn2Html.php prend en certain temps pour parcourir votre serveur dynamique et en extraire le contenu HTML. Pour www.altersystems.fr (environ 40 pages), le script met moins de 20 secondes.

Vous trouverez dans le rpertoire de  OUTPUT  lensemble des pages statiques composant votre nouveau site Web statique. Il suffit de les copier sur votre serveur Web pour que votre site statique soit en ligne.

Attention, Dyn2Html ne modifie pas les images, les feuilles de style (CSS) et autres fichiers que vous aviez sur votre site Web dynamique. Il est ncessaire d'uploader galement les rpertoires et fichiers qui ne font pas partie du contenu HTML.

Exemple :
Si votre site dynamique a une arborescence :

    * /index.php
    * /images/
    * /css/


Votre site final devra comporter galement les rpertoires  images  et  css , avec le mme contenu, de faon  ce que les pages html puissent garder les mme liens que les pages dynamiques :

    * /.html
    * /images/
    * /css/

Automatisation des mises  jour

Mais comment automatiser la gnration de mon site Web ? Rien de plus simple  faire, je parle bien dans un environnement Linux : )

Le fichier synchro.sh qui est fournit dans larchive de Dyn2Html est un exemple classique de mise  jour du serveur statique, sur le mme serveur que celui dynamique (simple copie de fichier) ou sur un autre serveur (par ftp).

Nous allons analyser ligne par ligne ce fichier :

#!/bin/sh

###############################################################################

# Dyn2Html : exemple d'utilisation automatise de Dyn2Html

###############################################################################

# Cr par Alter Systems SARL, www.altersystems.fr

# Distribu sous licence GPL

###############################################################################

# D'abord, aller dans le rpertoire ou dyn2html.php est install

cd /root/prodproc

# Lancer le script, aprs avoir modifi les 2 paramtres $LIVE_SITE et $OUTPUT_DIR

/usr/bin/php dyn2html.php

# 1re solution : copier les fichiers dans le rpertoire web du site statique et donner les droits  l'utilisateur apache:apache

cp -Rf output/* /www/eu/httpdocs/

chown -R apache:apache /www/eu/httpdocs/*

# 2me solution : utiliser ncftpput pour uploader les fichiers obtenus sur un serveur ftp distant

ncftpput -R -u altersys -p votre_mot_de_passe ftp.altersystems.fr /www/ /www/eu/httpdocs/*

