В письме от Вт 04 Фев 2003 14:48 Вы написали:
> На лицо ситуация: сервер путает запросы. Я правильно понял?
Еще раз повторюсь - в реврайт-логе апача все правильно.
> Apache путать не должен. Значит дело во враппере.
> Код в студию.
Я не думаю, что это чем-нибудь поможет. Это кусок, который отвечает именно за
картинки.
==start here==
#/usr/bin/perl
use Digi::Session; #session management module
use Digi::Setup; #setup management module
use Digi::Database; #database module
$|=1;#turn off buffering
my $db = Digi::Database->new(); #new db object
while(<STDIN>){
$url = $_;
if($url =~/^\/([0-9a-z]{32})\/preview\/(\d+)\/([^\/]+)$/){
$sess = $1; $fid = $2; $file = $3;
my $sess = Digi::Session->new4rewrite(db => $db, sess =>
$sess); # new session
if($sess){ #if session good
my $setup = Digi::Setup->new(db => $db, uid =>
$sess->uid); #new setup object
my $rootpath = $setup->setup('root'); #path to www-root
my $filepath = $setup->setup('path'); #path to file
store
$filepath =~ s/$rootpath//; #relative to www-root path
to file
my $r = $db->select("here the right select statment");
#get the real name
if($r->rows){ #if file exists
my $h = $r->hrow; #get row
my $suid = $sess->uid; #user's uid
if(($suid == $h->{uid}) && ($file eq
$h->{name})){ #if name && uid are good (names only in english!!!!)
print "$filepath/".$h->{file}."\n"
}else{
print "/error.html\n"
}
}else{
print "/error.html\n";
}
}else{
print "/error.html\n";
}else{
print $url;
}
}
==end here==
--
Stanislav Yadykin
Network Operation Center
CJSC "Internet-Service"
SVY3-RIPE
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =