Tema: CGI (Interface de pasarela común)
Pregunta: Como puedo hacer que mi script solo se ejecute en mi página web ?
Respuesta: Se hace usando la variable de entorno $ENV{'HTTP_REFERER'} que nos dice cual es la página que está pidiendo la ejecución del script...
Código:
my @referers = ('www.tudominio.com.ar', '*.tudominio.com.ar', 'tudiminio.com.ar');
&check_url;
sub check_url {
my $check_referer = 0;
if ($ENV{'HTTP_REFERER'}) {
foreach my $referer (@referers) {
if ($ENV{'HTTP_REFERER'} =~ m|https?://([^/]*)$referer|i) {
$check_referer = 1;
last;
}
}
}
else {
$check_referer = 1;
}
if ($check_referer != 1) { &error('verificar','host') }
}