27 lines
657 B
Perl
Executable File
27 lines
657 B
Perl
Executable File
#!/usr/bin/perl
|
|
use strict;
|
|
use warnings;
|
|
use Digest::SHA qw(sha1_hex);
|
|
# Desactiva el buffering de salida para que Apache pueda obtener la respuesta inmediatamente
|
|
$| = 1;
|
|
|
|
while (<STDIN>) {
|
|
chomp;
|
|
my $input = $_;
|
|
$input =~ /^\/image\/(.*)\/([a-z0-9-_]+)\.(png)$/;
|
|
my $collection = $1;
|
|
my $name = $2;
|
|
my $extension = $3;
|
|
|
|
my $sha1 = sha1_hex($name);
|
|
my $first = substr($sha1, 0, 2);
|
|
my $last = substr($sha1, 1, 2);
|
|
my $newPath = "images/$collection/$first/$last/$name.$extension";
|
|
|
|
if (-e "/usr/local/apache2/htdocs/$newPath") {
|
|
print "/$newPath\n";
|
|
} else {
|
|
print "/image/$input\n";
|
|
}
|
|
}
|