Verificar endereço em arquivo..
Rafael Lebrão Martins
rafamv1 em ig.com.br
Quinta Agosto 9 03:10:54 PDT 2007
Bom dia!! Preciso de uma ajuda... No código abaixo, a variável "$site"
recebe os dados de um formulário html.. O conteúdo dessa variável é um
endereço http, ele pode vir como ".perl.org.br"
ou "[subdominio].perl.org.br".. O problema é o seguinte:
Se eu tiver o endereço ".perl.org.br", não poderei adicionar qualquer coisa
que contenha ".perl.org.br", como www.perl.org.br ou mail.perl.org.br.
Preciso fazer com que o código faça isso!!
#!/usr/bin/perl
use warnings;
use strict;
use CGI qw ( :standard );
use constant SITEINEXIST =>
'http://www.meudominio.com.br/siteinexist.htm';
use constant SITEEXIST =>
'http://www.meudominio.com.br/siteexist.htm';
use constant SITELIBERADO =>
'http://www.meudominio.com.br/siteliberado.htm';
## Abre o arquivo e cria o Handle <LIBERADOS>;
my $arquivo = '/etc/squid/arquivos/liberados/dl_geral';
open ( LIBERADOS,$arquivo );
my @linhas = <LIBERADOS>;
#close (LIBERADOS);
## Recebe o conteudo das variaveis $site e $www do formulario htm;
my $site = param ( "site" );
chomp $site;
my $linha = "@linhas";
## Se a variavel $site for igual a [.], redireciona pra codigo htm;
if ($site eq /^[.]$/ ) {
print redirect (SITEINEXIST);
}
elsif (grep( {/^$site$/}@linhas)) {
print redirect (SITEEXIST);
}
else {
open ( LIBERADOS,"+>>$arquivo" );
print ( LIBERADOS "\n$site" );
close ( LIBERADOS );
system("squid -k reconfigure");
print redirect (SITELIBERADO);
}
Mais detalhes sobre a lista de discussão Cascavel-pm