#!/bin/sh
export DATE="14.9.2005";SCRIPT=${0#/rom}
export TITLE="Administration :
Publier"
. ${SCRIPT%/*}/cgi-bin-pre.sh
cat< Avec
le micro système de publication de ce firmware, il est assez facile
de modifier les pages web du point d'accès ou d'en ajouter de
nouvelles. Sous Windows il vous faudra installer le langage de script
Perl et un programme d'archive capable
de créer des archives TAR (par exemple
UltimateZip). Sous Linux ces
outils sont en général déjà installés. Un script perl
(template.pl) va lire un fichier patron HTML (template.html) et chercher
les chaînes de caractère "%BODY%". Ensuite, le
script perl va lire tous les fichier HTML du répertoire courant en
extractant la partie comprise entre <BODY> et </BODY>. La
partie extraite du code HTML est ensuite insérée dans le
fichier patron à la position %BODY% et le résultat
sauvegarder dans un autre répertoire (./out-fr/). Les
fichiers référencés, tels que les images par exemple,
sont aussi copiés par le script dans le nouveau répertoire.
La chaîne de caractère "$(echo -n %)DATE%" est
remplacé par la date et l'heure du fichier source. La chaîne
de caractère "$(echo -n %)TITLE%" est remplacée
par la première entête H1 rencontrée dans le fichier
source. Si le nom du fichier
source commence par "cgi-bin" les commandes shell appropriées
seront insérées afin d'être exécutées du
coté serveur. Vos propres commandes shell peuvent être écrites
entre les balises <SCRIPT LANGUAGE="shell"></SCRIPT>
dans le fichier source. Pendant l'exécution du coté serveur
web les variables du shell seront évaluées de manière
standard. Exemples : "\$PWD" sera transformé en
$PWD, "\$(ls /tmp)" listera le contenu du répertoire
/tmp. Au final, le répertoire
de destination (./out-fr/) est mis en paquet avec tous ses sous répertoires
dans un fichier archive TAR-, TGZ- or TAR.GZ. C'est ce fichier d'archive
qui peut être chargé par la page d'administration. Les pages
existantes (telle que cette page d'administration) ne sont pas effacées
au cours du processus. Veuillez
noter : Dans le paquet de publication, deux liens symboliques ne
sont pas inclus mais sont disponibles sur l'AP dans le répertoire
/www. Les messages d'avertissement "No ./netperf, No ./netserver"
sont normaux et reflètent simplement cet état de fait.
Notes
pour les utilisateurs Windows : Si les programmes "tar"
et "perl" sont installés, les commandes linux seront
aussi acceptées dans le terminal de commande. La chose à
faire néanmoins est de remplacer le caractère "/"
par backslash ("\"). Le script perl peut être exécuté
en double cliquant sur le fichier "template.pl". Ecrire du code HTML
valide et fermer les <Tags> ouvert avec </Tags>. Utiliser un éditeur
qui valide le HTML ou un simple éditeur mais avec un minimum de
rigueur. Pour
ajouter un lien vers une nouvelle page dans le fichier template.html.
Copier une des lignes de la table (i.e. <TR>... Etat ...</TR>)
et changer la balise <A HREF=""> et le texte. Il peut être
utile d'élargir la barre de navigation à gauche. Chercher et
changer l'attribut WIDTH="150" avec la valeur désirée.
Un
nouveau répertoire aura besoin d'un nouveau fichier template.html.
Le script perl va lire un fichier patron par répertoire. Pour économiser
de la place changer les références aux images par un répertoire
commun comme avec "../images/" par exemple. L'archive
TAR sera examinée pour supprimer les répertoires en trop. Plusieurs langues sont supportées
ou peuvent être ajoutées avec les tags <SPAN LANG="xx">.
Ainsi les attributs TITLE, ALT et VALUE sont scannés afin d'y
retrouver les motifs de texte "All langages !xx :Texte pour
la langue A !yy :Texte pour la langue B". Le script perl
accepte un paramètre pour filtrer la langue souhaitée.
Chargement des pages Web annulé.
Fichier
Archive de la page Web (*.tar) :
Créer
sa page Web
Fonctionnement
Manuel d'utilisation rapide
Astuces
$ffout
" zflag= if [ -z "${ffout##*.tar.gz}" ] || [ -z "${ffout##*.tgz}" ]; then zflag=-z fi tardir=$(tar $zflag -tvf "$ffout" | awk '/^-/ {exit} /^d/ {print $6;exit}') mkdir /tmp/wwwtmp.$$/ tar -C /tmp/wwwtmp.$$/ $zflag -xf "$ffout" rm -f "$ffout" chown -R root:root /tmp/wwwtmp.$$/ chmod +x /tmp/wwwtmp.$$/$tardir/cgi-bin*>/dev/null 2>&1 chmod +x /tmp/wwwtmp.$$/$tardir/cgi-bin/*>/dev/null 2>&1 tar -cC "/tmp/wwwtmp.$$/$tardir" .| tar -xvC /www/ rm -rf /tmp/wwwtmp.$$/ echo "" else cat<
Le chargement des pages web a été annulé.
EOF fi . ${SCRIPT%/*}/cgi-bin-post.sh