#!/bin/sh
export DATE="14.8.2007";SCRIPT=${0#/rom}
export TITLE="Administração: Publicar"
. ${SCRIPT%/*}/cgi-bin-pre.sh
cat< Com este reduzido sistema de publicação
deste firmware é simples mudar uma página web ou adicionar
uma nova. Para o sistema operacional Windows será necessário
instalar dois programas: um da linguagem Perl
e um programa para comprimir arquivos no formato *.TAR (exemplo:
UltimateZip). Em um sistema
Linux estes programas já se encontram instalados. Um
script Perl (template.pl) lê como base em um arquivo HTML
(template.html) e procura a cadeia de comandos "%BODY%". Depois
o script Perl lê um por um todos os arquivos-HTML no diretório
e extrai a parte entre <BODY> e </BODY>. A parte do HTML-extraído
será gravado no template no lugar de %BODY% e o resultado gravado
em uma nova pasta (/out-de/) O
Perl-Skript copia também arquivos tipo gráficos na nova
pasta. A sequêquencia de caracteres "$(echo -n %)DATE%"
será trocada pela data do arquivo fonte. A sequêquencia de
caracteres "$(echo -n %)TITLE%" será trocada pelo
primeiro H1-Título do arquivo fonte.
Se o arquivo fonte
começa com "cgi-bin", comandos Shell serão
iniciados pelo servidor-web. Comandos Shell podem ser escritos no arquivo
fonte entre a sequência de caracteres <SCRIPT LANGUAGE="shell"></SCRIPT>.
Algumas variáveis Shell serão resolvidas pelo servidor-web
quando este iniciar. Exemplo: "\$PWD" iniciará como $PWD
, "\$(ls /tmp)" listará o conteúdo do diretório
/tmp. A
Pasta com os arquivos (./out-de/) pode ser compactada com todos os seus
subdiretórios em um arquivo tipo TAR-, TGZ- oder TAR.GZ. Este
arquivo pode ser enviado por esta página de administração.
Páginas existentes (como a página de adminstração)
não serão afetadas nem apagadas por este processo. Nota
para usuários do Windows: Se os programas "tar" e "perl"
estiverem instalados, pode-se usar comandos Linux no prompt do Windows.
Simplesmente troque o símbolo "/" por "\". O
script Perl poderá também ser iniciado com um clicke duplo
em cima do nome do arquivo "template.pl". Escreva códigos HTML válidos
e termine sempre um <Tags> com </Tags>. Use para isso um
editor de texto e um pouco de disciplina. Insira uma referência
para uma nova página no arquivo template.html. Copie uma das linhas
da tabela (por exemplo: <TR>... Status ...</TR>) e altere o
Tag <A HREF=""> e o texto. Possivelmente a coluna dos
linkes da navegação deverá ser alargado. Procure e
altere WIDTH="150" para a largura desejada. Um
novo sub-diretório necessita também um novo template.html.
Este será encontrado pelo script Perl que especialmente lerá
cada sub-diretório. Para economizar espaço deve-se trocar as
referências para gráficos usando o linke abreviado "../images/". Para abreviar possíveis links para
sub-diretórios existentes o arquivo TAR será testado pelo
sistema antes de carregar. Diversos idiomas
podem ser usados paralelamente usando <SPAN LANG="xx">. Além
disso serão testados as variáveis TITLE, ALT e VALUE apartir
de um modelo "todos as línguas!xx:Texto para o idioma
A!yy:Texto para o idioma B". O script Perl pode ser iniciado por um
parâmetro para o idioma desejado. O
carregamento da nova página-web foi interrompida.
Páginas web-arquivo (*.tar) ou
gráfico da página inicial intro.jpg:
Alterar algumas páginas web
Funcionamento
Instruções
Dicas
$ffout
" if [ "${ffout##*/}" = "intro.jpg" ]; then set -x rm -f /www/images/intro.jpg mv "$ffout" /www/images set +x else zflag= if [ -z "${ffout##*.tar.gz}" ] || [ -z "${ffout##*.tgz}" ]; then zflag=-z fi tardir=$(tar $zflag -tvf "$ffout"|if read line;then if [ "-" != $(echo $line|dd bs=1 count=1 2>&-) ];then set $line;echo $6;fi;fi) mkdir /tmp/wwwtmp.$$/ tar -C /tmp/wwwtmp.$$/ $zflag -xf "$ffout" rm -f "$ffout" 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.$$/ fi echo "" else cat<
O carregamento da nova página-web não pôde ser executado.
EOF fi . ${SCRIPT%/*}/cgi-bin-post.sh