# ******************************************************************* #
# Pesquisa D' Alencar                 Versão 2.5a                     #
# Copyright © 1999-2001               Criado em: 22/06/1999           #
# Autor: Marcus Aurélio D' Alencar    Atualizado: 14/07/2001          #
# Página: www.dalencar.cjb.net        E-mail: script@dalencar.cjb.net #
# Aracaju - Sergipe - Brasil                                          #
# ******************************************************************* #
Novas versões estarão disponíveis em www.dalencar.cjb.net


Descrição

Este script funciona tanto em servidores UNIX e Linux quanto em Windows fazendo buscas internas em todo o seu site e retornando o link de todos os documentos que contenham a expressão procurada. Não é necessária nenhuma alteração nas páginas WEB do seu sítio *.

Os usuários poderão optar por um dos conectivos - e/ou, a distinção de maiúsculas e minúsculas - sensível/insensível - e ainda o número de resultados por página.

Você escolhe que tipos de arquivos serão pesquisados, o estilo da página que retornará os resultados como: a fonte, cor do fundo, do texto, dos links, etc. Decide se quer que os links venham acompanhados de uma breve descrição e se será criado um arquivo de log com as palavras procuradas pelos usuários, data, browser e sistema operacional que utilizam dentre outros.

* Não é possível cadastrar páginas (de outras pessoas) para a pesquisa; para isso, você precisará de outro tipo de script. Este script pesquisa somente nas páginas do seu sítio. Portanto, ele não cadastra páginas como Cadê e Yahoo.


Arquivos

dalencar.pl   -   script Perl (CGI) que faz a pesquisa no seu sítio;
pesquisa.sub   -   onde serão feitas todas as configurações (alterações);
leia-me.html   -   contém todas as explicações necessárias (este arquivo);
permissao.gif   -   imagem explicativa de como dar 'chmod' no WS_FTP;
pesquisa.html   -   página onde os visitantes farão a pesquisa.


Instalação

NÃO MODIFIQUE NADA no arquivo "dalencar.pl".

* Atenção:
A única exceção "poderá" ser na 1º (primeira) linha se o interpretador Perl do servidor não estiver em #!/usr/bin/perl (o padrão UNIX); ele também pode estar em:

#!/usr/local/bin/perl
#!/bin/perl
#!/usr/sbin/perl

Se você utiliza o script no Windows a primeira linha deverá ser alterada para:
#!C:\Perl\bin\perl.exe (o padrão) ou
#!C:\Perl\perl.exe

* Mais Atenção:
O servidor deve informar se o interpretador estiver em outro diretório. A maioria têm uma página de FAQs ou envia essa informação no e-mail de cadastro. Se for esse o seu caso abra o arquivo "dalencar.pl" com um editor de textos, altere a 1º (primeira) linha para o endereço fornecido pelo servidor e salve como Documento Texto, ou seja, sem formatação.

* Dica:
Se o seu servidor for:

www.virtualave.net - altere para #!/usr/local/bin/perl

www.prohosting.com - você não precisa alterar nada

www.hypermart.net - altere para #!/usr/local/bin/perl

www.webjump.com - altere para #!/usr/local/bin/perl

Obs.: A menos que o servidor seja Windows se não tiver certeza deixe como está porque na grande maioria dos casos não é necessária nenhuma modificação no script "dalencar.pl".
Este é o motivo de todas as configurações (alterações) serem feitas no arquivo "pesquisa.sub".


- Abra o arquivo "pesquisa.sub" com qualquer editor de textos (Bloco de Notas, Notepad) faça as alterações a seguir e salve-o como Documento Texto, ou seja, sem formatação.


$diretorio (chamado de basedir, path ou fullpath) - é o caminho ou localização no servidor para o diretório (pasta) onde você coloca seus arquivos html, htm, shtml, etc. Sem a barra (/) no fim.
ex. /home/seu_username/public_html

ex. e:\\home\\web (lembre-se que são duas barras invertidas no Windows)

-> A estrutura do $diretorio varia de acordo com o servidor. O mais comum em servidores Unix rodando Apache é (/home/seu_username/public_html) ou em servidores somente com Unix é (/htdoc ou /htdocs ou /WWW).

Dica:
Se o seu servidor for:

www.virtualave.net - $diretorio = "/data1/virtualave.net/seu_username/public_html";

www.hypermart.net - $diretorio = "/data1/hypermart.net/seu_username/public_html";


$url - a URL (link) da sua página. Sem a barra (/) no fim.
ex. http://www.servidor.com.br/seu_username


$ext - que tipos de arquivos serão pesquisados; não esqueça da barra "|" entre cada extensão.
ex. html|htm|shtml|asp|php|php3

Obs.: Este script só pesquisa por páginas Web, por isso, não coloque imagens (bmp - gif - jpeg), executáveis (exe - zip), textos (txt - doc), etc.


@excluir_dir - O(s) diretório(s) onde o script não deverá pesquisar.
ex. ('cgi-bin','dir_secreto')

Obs.: Coloque os diretórios entre aspas simples (') e separados por vírgulas. Se quiser que todos os diretórios sejam pesquisados deixe como esta.


$log - se será criado o arquivo "dalencar.log" no mesmo diretório onde está instalado o script com as palavras procuradas, data, ip, browser e sistema operacional dos usuários.

opções:
1 para sim
0 para não

-> O fuso horário utilizado é o de Brasília (GMT -03:00). Útil para saber o que os visitantes estão procurando em seu sítio, podendo assim, dar um enfoque maior aos assuntos mais pesquisados.

Obs.: Para visualizar o arquivo log, digite no campo endereço do seu navegador (browser) o seguinte:

endereço do script seguido de uma exclamação (?) e de sua senha (explicada logo abaixo).
ex. http://www.servidor.com.br/seu_username/cgi-bin/dalencar.pl?sua_senha


$lock - na maioria das vezes não é necessário alterar essa variável; só altere se o servidor informar que não é permitido o uso de flock ou se houverem problemas.

opções:
1 para sim
0 para não


$target - se ao clicar em um link na página dos resultados ele será aberto numa nova janela do navegador.

opções:
1 para sim
0 para não


$descricao - se na página dos resultados acompanhando cada link haverá uma breve descrição do conteúdo da página.

opções:
1 para sim
0 para não


$pagina - o endereço do arquivo "pesquisa.html".
ex. http://www.servidor.com.br/seu_username/pesquisa.html


$senha - ela será usada somente para você acessar o arquivo de log.

Lembre-se: Para que o arquivo de log seja criado a variável $log deve ser igual a 1.


* As próximas variáveis se referem ao 'estilo' da página que trará o resultado da busca.

$titulo = "Resultado da Pesquisa";

$corpo = 'bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#408080"';

$fonte = 'font face="Verdana, Arial, sans-serif" size=2';


$css - Para usar Cascading Style Sheet (CSS). Se não quiser ou souber deixe como está.
ex.
<style type="text/css">
<!--
a { text-decoration: none; }
// -->
</style>


* Atenção:

Das variáveis do arquivo "pesquisa.sub" as únicas que poderão trazer problemas significativos ao script são: $diretorio, $url e $ext, porque as outras são, em geral, relativas a características da página HTML com as quais você já deve estar acostumado.

Não altere e nem remova as aspas das variáveis.


- Abra o arquivo "pesquisa.html".


Altere o form action para a localização (URL) do script "dalencar.pl".

form action="/cgi-bin/dalencar.pl" ou
"http://www.servidor.com.br/seu_username/cgi-bin/dalencar.pl"

NÃO MUDE MAIS NADA pois o script pode não funcionar!


Importante

Envie os arquivos "dalencar.pl" e "pesquisa.sub" em modo ASCII para o diretório onde você possa rodar os seus scripts Perl (cgi-bin, cgi-local). O "pesquisa.html" envie em ASCII ou Binary (tanto faz) para o diretório principal (raiz) onde ficam os outros arquivos HTML da sua página.


Permissões

Se você roda o script em Windows ignore esta seção.

Para definir as permissões exitem duas maneiras:

TELNET - Conecte-se ao servidor e vá até o diretório onde se encontram os arquivos "dalencar.pl" e "pesquisa.sub".

-> Digite: chmod permissao arquivo
 

Pograma de FTP - Alguns programas tem essa opção como o WS_FTP ou as versões mais novas do CUTE FTP. Utilize o comando chmod (UNIX).

-> Digite: chmod permissao arquivo
 

A permissao para "dalencar.pl" é 755 e para "pesquisa.sub" é 722

ex:
chmod 755 dalencar.pl
chmod 722 pesquisa.sub


* Dica: Como definir a permissão (chmod) no WS_FTP ?

Selecione o arquivo "dalencar.pl" com um clique do mouse.

Dê um clique com o botão direito e selecione o comando chmod (UNIX), irá aparecer a caixa de diálogo Remote file permissions onde você deverá dar as permissões do seguinte modo:

Na primeira coluna (Owner) marque Read, Write e Execute

Na segunda (Group) marque Read e Execute

E na terceira (Other) marque Read e Execute.

Clique em OK.

ex.
Exemplo de como dar chmod no WS_FTP

Agora selecione o arquivo "pesquisa.sub" e repita o mesmo procedimento marcando os três campos da primeira coluna (Owner) e o primeiro da segunda (Group) e terceira (Other) coluna.


Observaçoes finais

Pronto. O script foi instalado! Você pode ter tantos 'forms' quanto queira e em qualquer lugar de suas páginas. Para testar o script abra a página "pesquisa.html" e pesquise por qualquer palavra.

Envie um e-mail com a URL (link) do seu site para que eu possa colocá-la na lista das páginas que o utilizam. Essa lista ficará disponível em meu sítio sendo vista pelos que a acessarem.


Garantias

O script foi testado exaustivamente por mim, por isso, posso lhe garantir que ele funciona com perfeição.

Mas, se tiver algum problema (ou sugestão) envie um e-mail para script@dalencar.cjb.net com o máximo de detalhes possíveis, como:

se roda o script em UNIX ou Windows;
versão do script que você utiliza;
se recebeu uma mensagem de erro e qual foi;
se tem conhecimentos de Perl ...


Copyright © 1999-2001 Marcus Aurélio D' Alencar
Todos os Direitos Reservados
E-mail: