#  > Servidores >  > Servidores de Rede >  >  squid - configurações de url_rewrite

## arium

pessoal estou com MUITO cache MISS no orkut
por mais que recarregue por varias vezes a mesma pagina...
já tentei varios parametros de refresh pattern 
e nada

tipo olhem esse exemplo:

http://img2.orkut.com/images/milieu/...jpg?sig=2amsed

e 

http://img4.orkut.com/images/milieu/...jpg?sig=2amsed


é a mesma imagem so muda o imgX.orkut

tentei usar o store rewrite mais nao tive sucesso!


queria quebrar o link em img[0-9].orkut

alguem sabe faze isso?!

Alexandre?!??! heheheh


Abraços!!




/Z21cfz1.jpg?sig=1r0f1lw - DIRECT/209.85.193.94 image/jpeg
1215401349.302 91 189.10.203.20 TCP_MISS/200 7612 GET http://img4.orkut.com/images/milieu/...jpg?sig=efkiqm - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401349.304 77 189.10.203.20 TCP_MISS/200 6790 GET http://img4.orkut.com/images/milieu/...pg?sig=1r0f1lw - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401349.387 244 127.0.0.1 TCP_MISS/200 6610 GET http://img3.orkut.com/images/milieu/...pg?sig=11hfjje - DIRECT/64.233.179.85 image/jpeg
1215401349.389 247 189.10.203.20 TCP_MISS/200 6725 GET http://img3.orkut.com/images/milieu/...pg?sig=11hfjje - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401349.402 215 127.0.0.1 TCP_MISS/200 5559 GET http://img1.orkut.com/images/milieu/...pg?sig=1idcj27 - DIRECT/209.85.193.87 image/jpeg
1215401349.404 219 189.10.203.20 TCP_MISS/200 5674 GET http://img1.orkut.com/images/milieu/...pg?sig=1idcj27 - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401349.426 236 127.0.0.1 TCP_MISS/200 5607 GET http://img3.orkut.com/images/milieu/...jpg?sig=y3kazm - DIRECT/64.233.179.85 image/jpeg
1215401349.429 242 189.10.203.20 TCP_MISS/200 5722 GET http://img3.orkut.com/images/milieu/...jpg?sig=y3kazm - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401349.446 219 127.0.0.1 TCP_MISS/200 5830 GET http://img1.orkut.com/images/milieu/...pg?sig=1bayv6t - DIRECT/209.85.193.86 image/jpeg
1215401349.448 223 189.10.203.20 TCP_MISS/200 5945 GET http://img1.orkut.com/images/milieu/...pg?sig=1bayv6t - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401349.584 407 127.0.0.1 TCP_MISS/200 6270 GET http://img3.orkut.com/images/milieu/...jpg?sig=7w7awl - DIRECT/64.233.179.86 image/jpeg
1215401349.586 411 189.10.203.20 TCP_MISS/200 6385 GET http://img3.orkut.com/images/milieu/...jpg?sig=7w7awl - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401349.609 409 127.0.0.1 TCP_MISS/200 12488 GET http://img4.orkut.com/images/milieu/...pg?sig=1oriumw - DIRECT/64.233.179.86 image/jpeg
1215401349.656 472 127.0.0.1 TCP_MISS/200 8192 GET http://img4.orkut.com/images/milieu/...jpg?sig=20fjzh - DIRECT/64.233.179.85 image/jpeg
1215401349.795 615 189.10.203.20 TCP_MISS/200 8307 GET http://img4.orkut.com/images/milieu/...jpg?sig=20fjzh - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401350.332 1137 189.10.203.20 TCP_MISS/200 12603 GET http://img4.orkut.com/images/milieu/...pg?sig=1oriumw - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215401350.569 391 127.0.0.1 TCP_MISS/200 11003 GET http://www.orkut.com.br/Home.aspx - DIRECT/209.85.193.94 text/html
1215401351.537 471 127.0.0.1 TCP_MISS/200 9153 GET http://img4.orkut.com/images/milieu/...jpg?sig=2amsed - DIRECT/64.233.179.85 image/jpeg

----------


## galahad

Arium,

o campo onde está o *TCP_MISS/200* é o campo do log onde aparece o _status HTTP_ da página acessada. Este status *200*, segundo a especificação do protocolo HTTP quer dizer que a página foi acessada e recuperada sem erro. Dentre outros status possíveis temos *302*, redirecionado temporariamente; *404*, página não encontrada; *500*, erro interno do servidor, e vários outros.

O que você tem que procurar, quando olhando o access.log do squid é o campo onde tem as informações _DIRECT/209.85.193.94_, que quer dizer que ele acessou a página diretamente e _DEFAULT_PARENT/127.0.0.1_, que diz que ele foi buscar o objeto no cache.

O Orkut, bem como outras páginas dinâmicas na Internet, usam cabeçalho de _no-cache_, que é respeitado pelo Squid para garantir que a página esteja sempre atualizada.

----------


## arium

desculpa amigo acho que nao fui claro!

o que botei o lance ali apenas como exemplo..
na realidade o que eu quero é saber o usar o store rewrite ou alguma forma de transformar

img2.orkut.com.br, img3.orkut.com.br , img4.orkut.com.br, im5g.orkut.com.br enfim imgX.orkut.com tudo em im1.orkut.com.br afim de facilitar a guarda no cache e ter mais sucessos no hit!

----------


## UlissesCampos

Bom vo me intrometer, ariun vc nao entendeu, mais ele esta falando que nao esta sendo feito cache destas paginas, o pessoal do google usa um comando
"<% 
Response.AddHeader "PRAGMA", "NO-CACHE" 
%> "

assim o squid nao faz cache com elas, vc pode usar o comando 

"<% 
response.expiresAbsolute=dateAdd("yyyy",1,now) 'vencera dentro de um ano 
%> "

Assim o squid guarda ela um ano, os padroes ajudao muito a vc controlar a acesso a seu site mesmo com o cliente usando cache, o pessoal do google ta fazendo isso, e se vc tentar burlar isso pode ter problemas de recaregamento de fotos erradas, que foi justamente o problema que levou eles a fazerem estas configuraçoes!


Desculpe por nao te ajudar!

----------


## arium

tudo bem mais eu soh quero aprender a fazer redirecionamento heheheheh 


quanto esse comando:
response.expiresAbsolute=dateAdd("y yyy",1,now) 

eu desconhecia! li o manual do squid não encontrei

como faço pra usa-lo? é interessante em algumas ocasiões

----------


## galahad

esse comando é, na verdade, uma parâmetro de uma página em ASP. É a mesma coisa de você usar o Header no PHP ou setar um cookie para expirar dentro de um ano usando javascript.

o store_rewrite que você está procurando, na verdade é o url_rewrite e seus parâmetros subsequentes. Você vai precisar de um programa externo ao Squid para fazer o rewrite das urls, eu sinceramente não conheço nenhum e não acho que valeria a pena por questões de performance.

----------


## arium

tenho um em perl aqui (e nao manjo bagatela nenhuma de perl) pro youtube que inclusive nao funcionou!

se eu soubesse os parametros de entrada e saida faria um em shell script mais nao achei na documentaçao tbm :/

----------


## galahad

a documentação do squid realmente está muito obscura com relação a isso. Eu não achei nada em cando nenhum falando em como utilizar.

Quer tentar postar o script perl que você tem aí para podermos procurar uma alternativa? Eu fiquei interessado nesse url_rewrite também...

----------


## arium

já vou postar

quanto ao header no cache 
usei


#Refresh
refresh_pattern orkut.com/.* 10080 100% 43200 override-expire override-lastmod reload-into-ims ignore-reload

#ORKUT
acl ORKUT dstdomain .orkut.com
header_access Cache-Control deny ORKUT
cache allow ORKUT


para minimizar

mais nao adianta muito pois uma vez ele pega do img.orkut.com outra do img2.orkut.com eh soda hehe

----------


## arium

aqui esta o rewriter! do youtube! mais nao fiz brilhar 

mais quem sabe o orkut! :P

se alguem que manja perl ajudasse nós a achar os parametros de entrada e de saída tava arregado!



```
#!/usr/bin/perl
use IO::File;
use IO::Socket::INET;
use IO::Pipe;
$| = 1;
$fh = new IO::File("/tmp/debug.log", "a");
$fh->print("Hello!\n");
$fh->flush();
while (<>) {
chomp;
#print LOG "Orig URL: " . $_ . "\n";
$fh->print("Orig URL: " . $_ . "\n");
if (m/kh(.*?)\.google\.com(.*?)\/(.*?) /) {
print "http://keyhole-srv.google.com" . $2 . ".SQUIDINTERNAL/" . $3 . "\n";
# print STDERR "KEYHOLE\n";
} elsif (m/mt(.*?)\.google\.com(.*?)\/(.*?) /) {
print "http://map-srv.google.com" . $2 . ".SQUIDINTERNAL/" . $3 . "\n";
# print STDERR "MAPSRV\n";
} elsif (m/^http:\/\/([A-Za-z]*?)-(.*?)\.(.*)\.youtube\.com\/get_video\?video_id=([^&]+).* /) {
print "http://video-srv.youtube.com.SQUIDINTERNAL/get_video?video_id=" . $4 . "\n";
$fh->print("http://video-srv.youtube.com.SQUIDINTERNAL/get_video?video_id=" . $4 . "\n");
$fh->flush();
} elsif (m/^http:\/\/([A-Za-z]*?)-(.*?)\.(.*)\.youtube\.com\/get_video\?video_id=(.*) /) {
# http://lax-v290.lax.youtube.com/get_video?video_id=jqx1ZmzX0k0
print "http://video-srv.youtube.com.SQUIDINTERNAL/get_video?video_id=" . $4 . "\n";
} else {
print $_ . "\n";
}
}
```

----------


## UlissesCampos

Na verdade e um comnando do servidor web! pro cabeçalho do pacote.

----------


## lucianogf

para você forçar o squid a fazer cache do orkut você deve encontrar os parâmetros no squid.conf


```
acl QUERY urlpath_regex cgi-bin \?
 
cache deny QUERY
```

 depois da acl QUERY você coloca:


```
acl QUERY urlpath_regex cgi-bin \?
 
acl FORCE dstdomain .orkut.com
cache allow FORCE
 
cache deny QUERY
```

 pronto, o squid fará cache dos objetos do orkut.

----------


## arium

> para você forçar o squid a fazer cache do orkut você deve encontrar os parâmetros no squid.conf
> 
> 
> ```
> acl QUERY urlpath_regex cgi-bin \?
>  
> cache deny QUERY
> ```
> 
> ...



na realidade foi como fiz mais nao coloquei entre o QUERY hehe irei testar e posto vale brother

----------


## lucianogf

você precisa colocar antes do deny QUERY, se colocar depois não vai adiantar nada

----------


## arium

valeu luciano!

de fato não tinha me ligado na lógica da coisa! hahahahah

agora fico faltando apenas o rewrite!!

isso economizaria uma banda VIOLENTA =)

pena nao ter documentação! dependemos dos progamadores de perl do forum creio eu!

----------


## arium

achei um começo para o redirector em shell! =)

[squid-users] url_rewrite_program

vo lidar mais por favor ajudem tbm!

----------


## lucianogf

você já viu no wiki do squid?

----------


## arium

já sim,

só tem um exemplo em perl e muito reba ainda.

----------


## galahad

Arium,

testa esse código em perl, específico para o teu problema do orkut:



```
#!/usr/bin/perl
$|=1;
while (<>) {
        @X = split;
        $url = $X[0];
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com/) {
                $url =~ s/img[0-9]/img1/;
                print "302:$url\n";
        } else {
                print "$url\n";
        }
}
```

 
Eu não testei no squid, mas rodando o script no shell ele fez a transformação redondinho.  :Smile:

----------


## arium

bá irmão brigadao!!! temos um scripter the perl entao?! hehehe vo testar depois posto! valeu!

----------


## arium

maninho coloquei seu script e tah executando
Warning: bad ps syntax, perhaps a bogus '-'? See procps - Frequently Asked Questions (FAQ)
proxy 1449 12.9 12.9 287892 266084 ? Rl 00:14 0:38 (squid) -D syC
proxy 1504 0.1 0.0 11280 1692 ? Ss 00:18 0:00 /usr/bin/perl /etc/squid/store_url_orkut
proxy 1505 0.0 0.0 11280 1684 ? Ss 00:18 0:00 /usr/bin/perl /etc/squid/store_url_orkut
proxy 1506 0.0 0.0 11280 1684 ? Ss 00:18 0:00 /usr/bin/perl /etc/squid/store_url_orkut
proxy 1507 0.0 0.0 11280 1680 ? Ss 00:18 0:00 /usr/bin/perl /etc/squid/store_url_orkut
proxy 1508 0.0 0.0 11280 1616 ? Ss 00:18 0:00 /usr/bin/perl /etc/squid/store_url_orkut
root 1523 0.0 0.0 4988 768 pts/0 R+ 00:19 0:00 grep squid
root 25830 0.0 0.0 15992 980 ? Ss Jul08 0:00 squid -D syC


só nao tah redirecionando  :Frown: 

tem como faze um debug.log pro pra por no tipo echo >> /tmp/debug.log

ae dentro os parametros:

entrada: $entrada
saida: $saida

soh pra analizar??

bração!



image/jpeg
1215659928.655 16 189.10.203.13 TCP_IMS_HIT/304 306 GET http://img1.orkut.com/images/small/1...7738164/ln.jpg - NONE/- image/jpeg
1215659928.686 12 189.10.203.13 TCP_IMS_HIT/304 306 GET http://img1.orkut.com/images/small/1...4/37621263.jpg - NONE/- image/jpeg
1215659928.690 0 189.10.203.13 TCP_IMS_HIT/304 305 GET http://img1.orkut.com/img/castro/p_scrap.gif - NONE/- image/gif
1215659928.693 14 189.10.203.13 TCP_IMS_HIT/304 306 GET http://img1.orkut.com/images/small/1...5/14654978.jpg - NONE/- image/jpeg
1215659928.703 0 189.10.203.13 TCP_IMS_HIT/304 305 GET http://www.orkut.com.br/img/smiley/i_bigsmile.gif - NONE/- image/gif
1215659928.705 33 127.0.0.1 TCP_MISS/200 654 GET http://img3.orkut.com/img/castro/btnbox_r.gif - DIRECT/209.85.193.94 image/gif
1215659928.705 37 189.10.203.13 TCP_MISS/200 753 GET http://img3.orkut.com/img/castro/btnbox_r.gif - DEFAULT_PARENT/127.0.0.1 image/gif
1215659928.712 67 127.0.0.1 TCP_MISS/200 2129 GET http://img2.orkut.com/images/small/1...055/966526.jpg - DIRECT/209.85.193.94 image/jpeg
1215659928.713 70 189.10.203.13 TCP_MISS/200 2228 GET http://img2.orkut.com/images/small/1...055/966526.jpg - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215659928.747 65 127.0.0.1 TCP_MISS/200 1630 GET http://img4.orkut.com/images/small/1...3454224/ln.jpg - DIRECT/209.85.193.86 image/jpeg
1215659928.749 68 189.10.203.13 TCP_MISS/200 1729 GET http://img4.orkut.com/images/small/1...3454224/ln.jpg - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215659928.767 95 127.0.0.1 TCP_MISS/200 2128 GET http://img4.orkut.com/images/small/1...2426756/ln.jpg - DIRECT/209.85.193.85 image/jpeg
1215659928.769 98 189.10.203.13 TCP_MISS/200 2227 GET http://img4.orkut.com/images/small/1...2426756/ln.jpg - DEFAULT_PARENT/127.0.0.1 image/jpeg

----------


## galahad

Fiz as modificações no script, tenta aí e posta o resultado do arquivo, por favor.



```
#!/usr/bin/perl
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        print $fh "entrada: $url\n";
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url\n";
                print "302:$url\n";
        } else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
}
```

----------


## arium

brother tu é o cara!

wireless:/tmp# tail -f debug_url_redirect.log
entrada: http://img2.orkut.com/images/small/1...1/24731261.jpg
saida: http://img1.orkut.com/images/small/1...1/24731261.jpg
entrada: http://img4.orkut.com/images/small/1...7400500/uf.jpg
saida: http://img1.orkut.com/images/small/1...7400500/uf.jpg
entrada: http://img4.orkut.com/images/small/1...7400500/uf.jpg
saida: http://img1.orkut.com/images/small/1...7400500/uf.jpg
entrada: http://img4.orkut.com/images/small/1...7282421/ln.jpg
saida: http://img1.orkut.com/images/small/1...7282421/ln.jpg
entrada: http://img4.orkut.com/images/small/1...7282421/ln.jpg
saida: http://img1.orkut.com/images/small/1...7282421/ln.jpg
entrada: http://img2.orkut.com/images/klein/24/13394724.jpg
saida: http://img1.orkut.com/images/klein/24/13394724.jpg
entrada: http://img2.orkut.com/images/klein/24/13394724.jpg
saida: http://img1.orkut.com/images/klein/24/13394724.jpg
entrada: http://img4.orkut.com/images/klein/1...0/14561600.jpg
saida: http://img1.orkut.com/images/klein/1...0/14561600.jpg
entrada: http://img4.orkut.com/images/klein/1...0/14561600.jpg
saida: http://img1.orkut.com/images/klein/1...0/14561600.jpg
entrada: http://img2.orkut.com/images/klein/1...798/543458.jpg
saida: http://img1.orkut.com/images/klein/1...798/543458.jpg
entrada: http://img2.orkut.com/images/klein/1...798/543458.jpg
saida: http://img1.orkut.com/images/klein/1...798/543458.jpg
entrada: http://img4.orkut.com/images/milieu/...pg?sig=1ixa5rs
saida: http://img1.orkut.com/images/milieu/...pg?sig=1ixa5rs


só não sei oq tah avendo pq nos log ele nao redireciona sca soh

215695635.650 73 189.10.203.20 TCP_MISS/200 3239 GET http://img3.orkut.com/images/chhota/...tid=1215637511 - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215695635.661 70 127.0.0.1 TCP_MISS/200 2485 GET http://img3.orkut.com/images/chhota/...tid=1215633147 - DIRECT/209.85.193.94 image/jpeg
1215695635.662 73 189.10.203.20 TCP_MISS/200 2584 GET http://img3.orkut.com/images/chhota/...tid=1215633147 - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215695635.876 33 127.0.0.1 TCP_MISS/200 2392 GET http://img3.orkut.com/images/chhota/...tid=1215632711 - DIRECT/209.85.193.94 image/jpeg
1215695635.878 79 189.10.203.20 TCP_MISS/200 2491 GET http://img3.orkut.com/images/chhota/...tid=1215632711 - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215695636.100 32 127.0.0.1 TCP_MISS/200 2543 GET http://img3.orkut.com/images/chhota/...tid=1215632577 - DIRECT/209.85.193.94 image/jpeg
1215695636.101 82 189.10.203.20 TCP_MISS/200 2642 GET http://img3.orkut.com/images/chhota/...tid=1215632577 - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215695637.193 366 127.0.0.1 TCP_MISS/200 21124 GET http://www.orkut.com.br/AlbumZoom.as...=1214919946894 - DIRECT/209.85.193.85 text/html
1215695637.221 32 127.0.0.1 TCP_MISS/200 2530 GET http://img3.orkut.com/images/small/1...5/71612430.jpg - DIRECT/209.85.193.94 image/jpeg
1215695637.223 35 189.10.203.20 TCP_MISS/200 2629 GET http://img3.orkut.com/
1215695746.293 129 127.0.0.1 TCP_MISS/200 2832 GET http://img4.orkut.com/images/klein/1202699362/55713.jpg - DIRECT/209.85.193.86 image/jpeg
1215695746.295 131 189.10.203.20 TCP_MISS/200 2931 GET http://img4.orkut.com/images/klein/1202699362/55713.jpg - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215695747.470 64 127.0.0.1 TCP_MISS/200 2011 GET http://img2.orkut.com/images/klein/52/12116652.jpg - DIRECT/209.85.193.94 image/jpeg
1215695747.471 77 189.10.203.20 TCP_MISS/200 2110 GET http://img2.orkut.com/images/klein/52/12116652.jpg


olha como fiz

acl store_rewrite_list dstdomain img2.orkut.com img3.orkut.com img4.orkut.com img5.orkut.com img6.orkut.com img7.orkut.com img8.orkut.com img9.orkut.com

storeurl_access allow store_rewrite_list
storeurl_access deny all
storeurl_rewrite_program /etc/squid/store_url_orkut2

----------


## arium

brother qual a moral desse 302 aqui do seu código?!

print "302:$url\n";


? abraços

----------


## galahad

Esse 302 é o código HTTP para página redirecionada.

Você já tentou entrar com a url da imagem direto no browser?

----------


## arium

vamo lá maninho!!!!



vo precisa da sua ajuda prá nos achar a soluição!

veja bem a sintaxe de entrada que tem que ter mesma saida 


URL <SP> client_ip "/" fqdn <SP> user <SP> method <SP> urlgroup
[<SP> kvpairs] <NL>


e a observação do comando:

Please note - the normal URL rewriter rewrites Squid's _destination_
URL - ie, what it fetches. The Store URL rewriter rewrites Squid's
_store_ URL - ie, what it uses to store and retrieve objects.

pelo que entendi a url

ele força o redirecionamento no browser não é?


o url_rewrite_program
tem mesma entrada e saida

mais a explicação:

The rewriter can also indicate that a client-side redirect should
be performed to the new URL. This is done by prefixing the returned
URL with "301:" (moved permanently) or 302: (moved temporarily).

It can also return a "urlgroup" that can subsequently be matched
in cache_peer_access and similar ACL driven rules. An urlgroup is
returned by prefixing the returned URL with "!urlgroup!".


que faz de fato o redirecionamento no proxy mesmo através do cache_peer(e é oque devemos usar) não é isso?


to ainda sem durmi fiquei ontem ateh as 5 brincando com isso ehhehe


mais saca soh peguei seu script e fiz isso aki



```
#!/usr/bin/perl
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        $client = $X[1];
        $nada = $X[2];
        $metodo = $X[3];
        $nada2 = $X[4];
        $myip = $X[5];
        $myport = $X[6];
        print $fh "entrada: $url $client $nada $metodo $nada2 $myip $myport\n";
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url $client $nada $metodo $nada2 $myip $myport\n";
                print "$url $client $nada $metodo $nada2 $myip $myport\n";
        } else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
}
```

 não entendo porcarinha nenhuma de perl foi apenas por intuição do ARRAY
pra dizer a verdade nao sei a moral daquele $|=1
enem como surge essa variavel @X que vir array eheheh

mais agora agora o log ficou assim:



```
entrada: http://img2.orkut.com/images/small/1214857291/66827875/ln.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
saida: http://img1.orkut.com/images/small/1214857291/66827875/ln.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
entrada: http://img4.orkut.com/images/small/1215120556/181627402/ln.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
saida: http://img1.orkut.com/images/small/1215120556/181627402/ln.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
entrada: http://img2.orkut.com/images/small/1214857291/66827875/ln.jpg 127.0.0.1/localhost - GET - myip=127.0.0.1 myport=8012
saida: http://img1.orkut.com/images/small/1214857291/66827875/ln.jpg 127.0.0.1/localhost - GET - myip=127.0.0.1 myport=8012
entrada: http://img4.orkut.com/images/small/1215120556/181627402/ln.jpg 127.0.0.1/localhost - GET - myip=127.0.0.1 myport=8012
saida: http://img1.orkut.com/images/small/1215120556/181627402/ln.jpg 127.0.0.1/localhost - GET - myip=127.0.0.1 myport=8012
entrada: http://img4.orkut.com/images/small/1210449045/40354090.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
saida: http://img1.orkut.com/images/small/1210449045/40354090.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
entrada: http://img4.orkut.com/images/small/1210449045/40354090.jpg 127.0.0.1/localhost - GET - myip=127.0.0.1 myport=8012
saida: http://img1.orkut.com/images/small/1210449045/40354090.jpg 127.0.0.1/localhost - GET - myip=127.0.0.1 myport=8012
entrada: http://img4.orkut.com/images/small/1213648220/65548598/ln.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
saida: http://img1.orkut.com/images/small/1213648220/65548598/ln.jpg 189.10.203.20/moster.ginet.com.br - GET - myip=189.10.203.1 myport=8012
entrada: http://img4.orkut.com/images/small/1213648220/65548598/ln.jpg 127.0.0.1/localhost - GET - myip=127.0.0.1 myport=8012
saida:
```

 todavia ainda nao é igual ao layout de entrada e saida do url_rewrite_program
que presumo ter de ser identicos!

URL <SP> client_ip "/" fqdn <SP> user <SP> method <SP> urlgroup
[<SP> kvpairs] <NL>




store.log atual (nada de redirect aparente)


```
OUeSP0QMwrSM59uEzTFbz0WB5ONk-NhJitJ4Pd6mzZdnzn9fXgIy5lnCE-JdVfSQc3-XDZF90a_sYUS2U84NXH2RGE5IciEudlcuT5dYPiqHhXy0NK1xN7k7msk7r4--rQyv6zvqOih_TihGG583b80nOpLr3YH56nfhFAJgVC1M9aGUIOD1j_8ed9kd6c2-wZExlAcOr_
1215798312.452 RELEASE -1 FFFFFFFF D6822075FFD3FC06A359E15BE2226B8D  302 1215797842        -1 1215797842 text/html 423/423 GET http://www.orkut.com.br/Home.aspx
1215798312.454 RELEASE -1 FFFFFFFF 7154AB0182F1288085F081A72ED75F27  302 1215797842        -1 1215797842 text/html 423/423 GET http://www.orkut.com.br/Home.aspx
1215798313.507 RELEASE -1 FFFFFFFF 85CAAC5C00CB9E5D4435CC88DEB15895  302 1215797843        -1 631152000 text/html 215/215 GET http://www.orkut.com.br/RedirLogin.aspx?msg=0&page=http%3A%2F%2Fwww.orkut.com.br%2FHome.aspx&pli=1&auth=DQAAAJYAAAC0dV3dF0Z2ErHIRDWRc1k85EqQ8HoPO5ICxSaP621MhWoz9naKJNpGbtbXNUo6wDk9qjnmohjgXG07MbErQbUDtOUmt8XA4HHmkL1TinGxmUrDzhtkKrozWHKTSnUZUJkA590m_J7gkyH1w7iQK4rApoZ9eogLh4iFJwvx58W4KG89cZgcP7YJ30TIyLp64Fp8woZ2qZOKsuG9mCQtqULt
1215798313.510 RELEASE -1 FFFFFFFF 4F9050583C96FA8E7A05977ABB75DE1E  302 1215797843        -1 631152000 text/html 215/215 GET http://www.orkut.com.br/RedirLogin.aspx?msg=0&page=http%3A%2F%2Fwww.orkut.com.br%2FHome.aspx&pli=1&auth=DQAAAJYAAAC0dV3dF0Z2ErHIRDWRc1k85EqQ8HoPO5ICxSaP621MhWoz9naKJNpGbtbXNUo6wDk9qjnmohjgXG07MbErQbUDtOUmt8XA4HHmkL1TinGxmUrDzhtkKrozWHKTSnUZUJkA590m_J7gkyH1w7iQK4rApoZ9eogLh4iFJwvx58W4KG89cZgcP7YJ30TIyLp64Fp8woZ2qZOKsuG9mCQtqULt
1215798314.770 RELEASE -1 FFFFFFFF B975B6209E7E7A29CD9C8352D0270498  302 1215797844        -1 1215797844 text/html 423/423 GET http://www.orkut.com.br/Home.aspx
1215798314.772 RELEASE -1 FFFFFFFF 3A73E95C028C847A2FCBA4A8A11789C2  302 1215797844        -1 1215797844 text/html 423/423 GET http://www.orkut.com.br/Home.aspx
1215798315.376 RELEASE 00 0018A01C 0797AC08E6BFFA7223022792C50A5830  200 1215797845 1215533835 1247333845 image/jpeg 2318/2318 GET http://img4.orkut.com/images/small/1215533835/29429459/ln.jpg
1215798315.969 RELEASE -1 FFFFFFFF 30EAA653CB22442F0773598B3F72AC24  302 1215797846        -1 631152000 text/html 215/215 GET http://www.orkut.com.br/RedirLogin.aspx?msg=0&page=http%3A%2F%2Fwww.orkut.com.br%2FHome.aspx&pli=1&auth=DQAAAJcAAABVjiEgHkPW4vhcIy9YtPZi8IU5fctpYcpgI0s2Jbrv8lurBF5kHaHZ90KV_25njfJ_Kg1rO_g-b2Axa3xRcSoHhwO8shjrKZCOriN0O9ezYmlD5iJJPJ8RhFOCGzUuZPNoEse-dNXZVzrGD06Ni9NSlA2SC6uZkTILGROSDODaVUJEsBmKMLCFvpRWM1YbaVeB-lz8ShmJTQC7BPPmDelr
1215798315.972 RELEASE -1 FFFFFFFF 8192D1E2C76DEA98B651CC6345F5DC93  302 1215797846        -1 631152000 text/html 215/215 GET http://www.orkut.com.br/RedirLogin.aspx?msg=0&page=http%3A%2F%2Fwww.orkut.com.br%2FHome.aspx&pli=1&auth=DQAAAJcAAABVjiEgHkPW4vhcIy9YtPZi8IU5fctpYcpgI0s2Jbrv8lurBF5kHaHZ90KV_25njfJ_Kg1rO_g-b2Axa3xRcSoHhwO8shjrKZCOriN0O9ezYmlD5iJJPJ8RhFOCGzUuZPNoEse-dNXZVzrGD06Ni9NSlA2SC6uZkTILGROSDODaVUJEsBmKMLCFvpRWM1YbaVeB-lz8ShmJTQC7BPPmDelr
1215798316.087 SWAPOUT 00 0018A026 99A243DDEA352CF51BF73CE99B1EE6A2  200 1215797846 1212868473 1247333846 image/jpeg 3025/3025 GET http://img3.orkut.com/images/medium/1212868473/19747659/ln.jpg
1215798316.089 RELEASE 00 0018A026 0A62B2AD54F04D3285D9C663CF1F1814  200 1215797846 1212868473 1247333846 image/jpeg 3025/3025 GET http://img3.orkut.com/images/medium/1212868473/19747659/ln.jpg
1215798316.090 SWAPOUT 00 0018A026
```

 access.log atual (nada de redirect aparente ainda)



```
1215798449.210      2 189.10.203.20 TCP_HIT/200 1368 GET http://img1.orkut.com/images/small/1214334295/87112119/ln.jpg - NONE/- image/jpeg
1215798449.415    362 127.0.0.1 TCP_MISS/200 21248 GET http://www.orkut.com.br/AlbumZoom.aspx?uid=11685979526798855119&aid=1215682597&pid=1215707956738 - DIRECT/209.85.193.85 text/html
1215798449.424    395 189.10.203.20 TCP_MISS/200 21347 GET http://www.orkut.com.br/AlbumZoom.aspx?uid=11685979526798855119&aid=1215682597&pid=1215707956738 - DEFAULT_PARENT/127.0.0.1 text/html
1215798449.459      4 189.10.203.20 TCP_HIT/200 589 GET http://img2.orkut.com/img/castro/arr_expanded.gif - NONE/- image/gif
1215798449.468     19 189.10.203.20 TCP_HIT/200 2873 GET http://img2.orkut.com/images/klein/1210145418/45026.jpg - NONE/- image/jpeg
1215798449.482     56 189.10.203.20 TCP_HIT/200 2417 GET http://img1.orkut.com/images/klein/1204087725/999.jpg - NONE/- image/jpeg
1215798449.500     35 127.0.0.1 TCP_MISS/200 4715 GET http://img2.orkut.com/images/medium/1214943794/200098817/ln.jpg - DIRECT/209.85.193.94 image/jpeg
1215798449.500     39 127.0.0.1 TCP_MISS/200 2399 GET http://img2.orkut.com/images/klein/62/31302262.jpg - DIRECT/209.85.193.87 image/jpeg
1215798449.503     45 189.10.203.20 TCP_MISS/200 2498 GET http://img2.orkut.com/images/klein/62/31302262.jpg - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215798449.504     42 189.10.203.20 TCP_MISS/200 4814 GET http://img2.orkut.com/images/medium/1214943794/200098817/ln.jpg - DEFAULT_PARENT/127.0.0.1 image/jpeg
1215798449.514     65 127.0.0.1 TCP_MISS/200 1987 GET http://img2.orkut.com/images/klein/1214793681/22560/ln.jpg - DIRECT/209.85.193.85 image/jpeg
1215798449.517     69 189.10.203.20 TCP_MISS/200 2086 GET
```

----------


## lucianogf

cara..

mas pq se tá fazendo todo esse trampo pro orkut? o squid faz cache dos objetos dele e libera como HIT, o seutubo (youtube) que é enroscado e precisaria de url_rewrite.

----------


## arium

MANINHOOOOOOOOOOOOOO brilhow
era só questão de um intendimento melhor:


saca soh


```
  GET http://img1.orkut.com/images/small/1215132839/36261131/ln.jpg
1215800019.361 SWAPOUT 00 0018C808 58AA209C74D5F0618B1953DD2E16DB08  200 1215799549 1215132839 1247335549 image/jpeg 1503/1503 GET http://img1.orkut.com/images/small/1215132839/36261131/ln.jpg
1215800019.364 SWAPOUT 00 0018C80A 41E736EE585EBB878B31085D86E10437  200 1215799549 1208219090 1247335549 image/jpeg 1575/1575 GET http://img1.orkut.com/images/small/1208219091/59258862.jpg
1215800019.366 RELEASE 00 0018C80A 6441C81A8EA66BC8A728C93EF19B0B51  200 1215799549 1208219090 1247335549 image/jpeg 1575/1575 GET http://img1.orkut.com/images/small/1208219091/59258862.jpg
1215800019.366 SWAPOUT 00 0018C80B 41E736EE585EBB878B31085D86E10437  200 1215799549 1208219090 1247335549 image/jpeg 1575/1575 GET http://img1.orkut.com/images/small/1208219091/59258862.jpg
1215800019.448 SWAPOUT 00 0018C80C 716098454EDDC8097160265021AACFBE  200 1215799549 1191773464 1247335549 image/jpeg 1696/1696 GET http://img1.orkut.com/images/small/1191773464/72811298.jpg
1215800019.449 RELEASE 00 0018C80C 4BE67CCCCABEBC84E8151D860376AD6D  200 1215799549 1191773464 1247335549 image/jpeg 1696/1696 GET http://img1.orkut.com/images/small/1191773464/72811298.jpg
1215800019.450 SWAPOUT 00 0018C80D 716098454EDDC8097160265021AACFBE  200 1215799549 1191773464 1247335549 image/jpeg 1696/1696 GET http://img1.orkut.com/images/small/1191773464/72811298.jpg
1215800019.503 SWAPOUT 00 0018C80E 32CF8FBA908BA043C549D872E1BD001D  200 1215799549 1214489320 1247335549 image/jpeg 1644/1644 GET http://img1.orkut.com/images/small/1214489320/35055828/ln.jpg
1215800019.504 RELEASE 00 0018C80E B7F60A92C4C79F67B8CE0FE41F0B22B4  200 1215799549 1214489320 1247335549 image/jpeg 1644/1644 GET http://img1.orkut.com/images/small/1214489320/35055828/ln.jpg
1215800019.505 SWAPOUT 00 0018C80A 32CF8FBA908BA043C549D872E1BD001D  200 1215799549 1214489320 1247335549 image/jpeg 1644/1644 GET http://img1.orkut.com/images/small/1214489320/35055828/ln.jpg
1215800019.533 SWAPOUT 00 0018C80C B8C2E3D784BF2BA7791D6A4290A50E2F  200 1215799549 1156436717 1247335549 image/jpeg 1740/1740 GET http://img1.orkut.com/images/klein/66/55666.jpg
1215800019.535 RELEASE 00 0018C80C 54E2877EDC5236654C027097434B473C  200 1215799549 1156436717 1247335549 image/jpeg 1740/1740 GET http://img1.orkut.com/images/klein/66/55666.jpg
1215800019.535 SWAPOUT 00 0018C80C B8C2E3D784BF2BA7791D6A4290A50E2F  200 1215799549 1156436717 1247335549 image/jpeg 1740/1740 GET http://img1.orkut.com/images/klein/66/55666.jpg
1215800019.541 SWAPOUT 00 0018C80E 0BD10811516DCBBB0136CCB595E7571B  200 1215799549 1151109757 1247335549 image/jpeg 2905/2905 GET http://img1.orkut.com/images/klein/62/15787262.jpg
1215800019.557 RELEASE 00 0018C80E 6FA809F4FF7B5B0245C9989BF5ECA54C  200 1215799549 1151109757 1247335549 image/jpeg 2905/2905 GET http://img1.orkut.com/images/klein/62/15787262.jpg
1215800019.558 SWAPOUT 00 0018C80E 0BD10811516DCBBB0136CCB595E7571B  200 1215799549 1151109757 1247335549 image/jpeg 2905/2905 GET http://img1.orkut.com/images/klein/62/15787262.jpg
1215800020.364 SWAPOUT 00 0018C813 B77C8DE0A8DB4B3E083A2161AE9F6934  200 1215799550 1197330572 1247335550 image/jpeg 1581/1581 GET http://img1.orkut.com/images/klein/1208890549/42801646.jpg
1215800020.366 RELEASE 00 0018C813 661D31BB56BCD11D040729B18A3E9C10  200 1215799550 1197330572 1247335550 image/jpeg 1581/1581 GET http://img1.orkut.com/images/klein/1208890549/42801646.jpg
1215800020.366 SWAPOUT 00 0018C813 B77C8DE0A8DB4B3E083A2161AE9F6934  200 1215799550 1197330572 1247335550 image/jpeg 1581/1581 GET http://img1.orkut.com/images/klein/1208890549/42801646.jpg
```

 wazaaaaaaaaaaaaa!!!!!!

lá vai os codes

entre os acl QUERY urlpath_regex cgi-bin \?
e
cache deny QUERY

colocar:
acl ORKUT dstdomain .orkut.com .orkut.com.br
cache allow ORKUT


Ficando:
acl QUERY urlpath_regex cgi-bin \?
acl ORKUT dstdomain .orkut.com .orkut.com.br
cache allow ORKUT
cache deny QUERY


nos pattern:
refresh_pattern orkut.com/.* 10080 100% 43200 override-expire override-lastmod reload-into-ims ignore-reload

depois:

storeurl_rewrite_children 70
acl store_rewrite_list dstdomain .orkut.com
url_rewrite_access allow store_rewrite_list
url_rewrite_access deny all
url_rewrite_program /etc/squid/store_url_orkut2



o script em perl /etc/squid/store_url_orkut2



```
#!/usr/bin/perl
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        $client = $X[1];
        $nada = $X[2];
        $metodo = $X[3];
        $nada2 = $X[4];
        $myip = $X[5];
        $myport = $X[6];
        print $fh "entrada: $url\n";
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url\n";
                print "$url\n";
        } else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
}
```

 tive que tirar o 302 ! e deu pros cuturno!!!

----------


## arium

maninho vamos aprimorar esse script ai!!! ;P

consegue faze um IF dentro dele

if downloadxxx.avast.com redireciona pra downloadyyy.avast.com ? ;D

----------


## galahad

tá aí:



```
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        print $fh "entrada: $url\n";
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url\n";
                print "$url\n";
        } elseif ($url =~ /^http:\/\/download[0-9]{3}.avast.com/) {
                $url =~ s/download[0-9]{3}/downloadyyy/;
                print $fh "saida: $url\n";
                print "$url\n";
        } else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
}
```

----------


## arium

> tá aí:
> 
> 
> 
> ```
> $|=1;
> while (<>) {
>         open $fh, ">>/tmp/debug_url_redirect.log";
>         @X = split;
> ...


o avast é de de download000ádownload999 vai funga tbm irmão?!

----------


## galahad

vai sim... sem nenhum problema!  :Smile:

----------


## arium

> cara..
> 
> mas pq se tá fazendo todo esse trampo pro orkut? o squid faz cache dos objetos dele e libera como HIT, o seutubo (youtube) que é enroscado e precisaria de url_rewrite.


to removendo por 2 motivos!

1 enconomia de link porque TODOS OS HITS vao ser traduzidos para 
img1.orkut

2 acabar com duplicidade de arquivos dentro do cache economizando espaço precioso...

para orkut... avast... e todos os mais utilizados... orkut de fotinho em fotinho duplicada cada uma nove vezes vai um bom espaço e banda...

avast us update sao de até 15 megas ae baixo uma vez nao vai dah mais cache misss... por esses motivos  :Wink:  minha intençao é deixar o proxy o mais perfeito possivel... vou começar com os fáceis para ter uma base .. e melhorar minha skill hehehe depois parto pros dificieis..
youtube... pornotube... redtube .. acho que os pornos tão mais vistos que o youtube utimamente hahahahahah  :Wink:

----------


## arium

> vai sim... sem nenhum problema!


tu é o cara =D

mais me explica como funciona aquele [0-9]

é pra receber um numeral de até 9 digitos? tipo download1

download12
download123
download1234
download12345
download123456
download1234567
download...................
download123456789

?

----------


## galahad

Na verdade aquele [0-9] é um regex que casa com qualquer número de 0 a 9, e o {3} é um regex que só vai casar se forem três algarismos. Ou seja, [0-9]{3} == [0-9][0-9][0-9] == 000 - 999, entendeu?

----------


## arium

se quiser botar mais hots entao agora só eu ir acrscentando

elseif ($url =~ /^http:\/\/inicio[0-9]{3}.host.com/) {
$url =~ s/inicio[0-9]{3}/novoinicio/;
print $fh "saida: $url\n";
print "$url\n";
}


é isso?

tem como explicar?

Abraçao

----------


## arium

saquei valeu =D

----------


## lucianogf

depois que estiver com tudo OK coloca no wiki, assim é melhor até para atualizações.

----------


## arium

> depois que estiver com tudo OK coloca no wiki, assim é melhor até para atualizações.



pode deixa!! vo larga lá um squid samuray pra nos desbancar o ninja! ;D hehehe


abraço!

----------


## arium

testei o codigo novo tah trancando o squid :/





```
#!/usr/bin/perl
#X[0]-> URL EX: IMG1.ORKUT.COM
#X[1]-> CLIENT IP: 189.10.203.13/ANGEL.GINET.COM.BR
#X[2]-> -
#X[3]-> GET ou POST
#X[4]-> -
#X[5]-> MYIP : 189.10.203.1 OU 127.0.0.1
#X[6]-> MYPORT EX: 8012
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        print $fh "entrada: $url\n";
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url\n";
                print "$url\n";
        } elseif ($url =~ /^http:\/\/download[0-9]{3}.avast.com/) {
                $url =~ s/download[0-9]{3}/download605/;
                print $fh "saida: $url\n";
                print "$url\n";
        } else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
```

 


apesar de estar injetando normal (conferi pelo velho só habilitei pra o dominio avast.com tbm passar pelo redirector)

entrada: http://img1.orkut.com/js/gen/groups009.js
nao redirecionado
entrada: http://download933.avast.com/iavs4x/..._pro.vpu.stamp
nao redirecionado
entrada: http://download933.avast.com/iavs4x/vpsm-8070800.vpu
nao redirecionado
entrada: http://download933.avast.com/cgi-bin/iavs4stats.cgi
nao redirecionado
entrada: http://download933.avast.com/cgi-bin/iavs4stats.cgi


se eu coloco o script novo ele tranca  :Frown:

----------


## galahad

Hmmmm... foi mal, papei mosca!

no perl não tem elseif, é só if.  :Smile:

----------


## arium

mais ae o else nao vai fica funcionando apenas com o dominio do avast?

----------


## arium

jah vi que nao! tah funcionando! heheh

----------


## galahad

hehehehehe  :Smile:

----------


## lucianogf

seria massa pra sites como Globo, youtube (apesar que é dificil mais mais de uma pessoa assistir o mesmo vídeo), rapidshare

----------


## arium

*orkut ok
*Avast ok
*AVG Testando mais á principio Ok (esse é facil é 2 dominios hehe)

Next:
Avira 
Kaspersky

depois caio pros sites mais difíceis!

----------


## lucianogf

estou trocando meu servidor e nem dá pra eu testar agora, depois que o outro estiver rodando ok vou colocar pra rodar e ver como ficará..

vou mudar do squid 2.6 pro 2.7, parece que tem muitas melhorias.

----------


## lucianogf

acho que o principal mesmo seria das atualizações do windows, puta merda, se conseguir fazer com que as atualizações sejam baixadas apenas uma vez e depois seja enviado do cache seria uma mão na roda, tanto em ganho de velocidade quanto em economia de link.

já até pensei em usar o windows update service service, mas pra isso teria que ter uma maquina rodando 2003, e to correndo disso.. eheheh

----------


## galahad

Eu estou usando o squid 3 já há algum tempo e muito satisfeito com ele.

E realmente, se conseguir fazer cache dos updates da MS seria muito bom!  :Smile:

----------


## lucianogf

pelo que pesquisei na net tem um utilitário que roda junto com o samba, ele faz como se fosse um cache dos pacotes de atualizações, mas é necessário instalar um programa no micro cliente, aí fica complicado, o negócio tem que ser transparente ao cliente.

----------


## arium

vamos ver oq conseguimos  :Wink:

----------


## arium

fudido o windows update meu deus parece que ele faz por streaming!


achei isso na net!

se desse para imendar no nosso!
pelo que deu pra entender usa uma pasta no apache faz download pra lá de tudo
depois por dns ele vai redirecionando pra pasta interna

como um SUB-cache!

# byron jones
# public domain

# fixed bug .. now prints blank line if there's no change
# fixed bug .. removed psf from extension list
# fixed weirdness .. "next" on some flavours of perl wasn't "next"ing
# fixed v5 issue by not caching iuident.cab (thanks marvi benedet)

$| = 1;

my $cache_path = '/usr/local/apache/htdocs/cache/store';
my $cache_url = 'http://10.0.0.254:8000/cache/store';
my $downloader = '/usr/local/apache/htdocs/cache/download';

URL: while(<>) {

# grab url (first word)
($url) = /^(\S+)/;
$orig_req = $_;
$orig_url = $url;

# decode
$url =~ tr|+| |;
$url =~ s|%([a-fA-F0-9][a-fA-F0-9])|pack("C", hex($1))|ge;
$url =~ s/\000+$//; # trailing nulls

# check cache store

{
my $url = $orig_url;
$url =~ s#^http://##i;
$url =~ s/^www\.//i;
if($url !~ /iuident\.cab/ && -e "$cache_path/$url" && !-d "$cache_path/$url" && !-e "$cache_path/$url.downloading") {
open(FH, ">>$cache_path/../log");
print FH '[', scalar localtime, '] ';
print FH "cachehit ", -s "$cache_path/$url", " $url\n";
close FH;
# s|^\S+|$cache_url/$url|;
print "$cache_url/$url\n";
next URL;
}
}

# cache windows update and other bits

if(!/^\Q$cache_url/i) {
if(
(
# any microsoft cab (windowsupdate, officeupdate, msdn, etc)
m#^http://(.*?\.microsoft\.com\S+\.(cab|exe))\b#i
|| m#^http://(.*?\.windowsupdate\.com\S+\.(cab|exe))\b#i
|| m#^http://(.*?mssjus\.www\.conxion\.com\S+\.(cab|exe))\b#i
# quicktime
|| m#^http://(.*?qtinstall\.apple\.com\S+\...|idx|dat))\b#i
# java
|| m#^http://(.*?java\.sun\.com\S+\.(cab|exe))\b#i
# adobe acrobat
|| m#^http://(.*?ardownload\.adobe\.com\S+...x|gz|exe))\b#i
)
&& !(m#iuident\.cab\b#i)
) {
my $url = $1;
$url =~ s/^www\.//i;
if(-e "$cache_path/$url" && !-e "$cache_path/$url.downloading") {
open(FH, ">>$cache_path/../log");
print FH '[', scalar localtime, '] ';
print FH "cachehit ", -s "$cache_path/$url", " $url\n";
close FH;
# s|^\S+|$cache_url/$url|;
print "$cache_url/$url\n";
next URL;
} else {
system("$downloader $url 2>&1 >/dev/null &");
}
}
}

# no change
print "\n";

}

__END__
1000355322.691 106912 JIMMY.internal TCP_MISS/200 14884044 GET http://www.download.windowsupdate.co...D5BF46A97.exe? - DIRECT/203.102.129.100 application/octet-stream

----------


## arium

quanto ao AVG vo precisar de mais uma ajudinha!!!!

saca soh

o avg tem esses hosts aki:
guru.avg.com
downloadfree.avg.com
akamai.avg.com

e esse aqui que cria uma subpasta que eh o 
update.avg.com



fiz isso aki e ambos funcionam:
if ($url =~ /^http:\/\/guru.avg.com/) {
$url =~ s/guru/downloadfree/;
print $fh "saida: $url\n";
print "$url\n";
}
if ($url =~ /^http:\/\/akamai.avg.com/) {
$url =~ s/akamai/downloadfree/;
print $fh "saida: $url\n";
print "$url\n";
}



só que olha soh a diferença dos 3 hosts guru , akamai e download free pro update....



http://akamai.avg.com/update/u7avi1337u13277l.bin
http://guru.avg.com/update/u7avi1337u13277l.bin
http://downloadfree.avg.com/update/u7avi1337u13277l.bin
http://update.avg.com/softw/80/update/u7avi1337u13277l.bin


tem como dar uma mão ae pra optimizar esse lance? abração!

----------


## galahad

os do update são sempre softw/80?

se for é só fazer:



```
if ($url =~ /^http:\/\/update.avg.com/) {
                $url =~ s/update/downloadfree/;
$url =~ s/softw\/80\///;
                print $fh "saida: $url\n";
                print "$url\n";
        }
```

 
Se não for, aí tem que ver o padrão pra ver qual vai ser a melhor forma de resolver isso.  :Wink:

----------


## arium

to tendo alguns entrevês com o AVG, pois ele tem algumas outras particularidades... quando eu aciono todos os redirecionamentos ele não updateia... estou verificando aqui assim que acabar posto


pode explicar a lógica da linha?

$url =~ s/softw\/80\///; abraços! quero dizer como ele sabe que tem que cortar na parte X até Y  :Wink:

----------


## galahad

posta aqui essas particularidades, que aí fica mais fácil de tentar achar uma forma de resolver.

Quanto a linha que você pediu pra explicar, eu mandei ele trocar softw/80/ por nada. Pra ficar mais fácil de visualizar, a linha pode ser escrita assim: $urs =~ [email protected]/80/@@; usando os @ como delimitadores.  :Smile:

----------


## lucianogf

Pessoal, os assuntos discutidos já não são mais referentes ao título do tópico.

Vamos abrir um tópico referente a url_rewrite do squid e discutir esse assunto.

----------


## arium

muda o nome deste topico mesmo amigão.. para não dissipar as infos.
eu tentei mais nao libera a modificação do titulo

----------


## arium

> posta aqui essas particularidades, que aí fica mais fácil de tentar achar uma forma de resolver.


hj de noite eu posto pq hj de tarde nao vou ter como mexer nele tenho varios clientes para visitar!  :Wink:

----------


## lucianogf

feito...

----------


## arium

achei a lógica da coisa...

downloadfree.avg.com pode as vezes ser redirecionado para akamai.avg.com

e guru.avg.com para update.avg.com

entao fica assim acoisa:


```
        if ($url =~ /^http:\/\/akamai.avg.com/) {
                $url =~ s/akamai/downloadfree/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        if ($url =~ /^http:\/\/update.avg.com/) {
                $url =~ s/update/guru/;
                print $fh "saida: $url\n";
                print "$url\n";
}
```

 só o seguinte:

1216124488.249 9960 127.0.0.1 TCP_MISS/200 7393 GET http://guru.avg.com/softw/80free/update/avginfowin.ctf - DIRECT/193.86.3.38 text/plain
1216124488.251 9986 189.10.203.25 TCP_MISS/200 7487 GET http://guru.avg.com/softw/80free/update/avginfowin.ctf - DEFAULT_PARENT/127.0.0.1 text/plain
1216124512.361 23924 127.0.0.1 TCP_MISS/200 2734 GET http://guru.avg.com/softw/80free/update/avginfoavi.ctf - DIRECT/193.86.3.38 application/octet-stream
1216124512.363 23927 189.10.203.25 TCP_MISS/200 2828 GET http://guru.avg.com/softw/80free/update/avginfoavi.ctf - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216124514.484 725 127.0.0.1 TCP_MISS/302 638 GET http://guru.avg.com/softw/80free/upd...338u13271q.bin - DIRECT/193.86.3.38 text/html
1216124514.485 728 189.10.203.25 TCP_MISS/302 732 GET http://guru.avg.com/softw/80free/upd...338u13271q.bin - DEFAULT_PARENT/127.0.0.1 text/html
1216124515.432 409 189.10.203.25 TCP_OFFLINE_HIT/200 116777 GET http://downloadfree.avg.com/update/u7avi1338u13271q.bin - NONE/- application/octet-stream
1216124519.332 3729 127.0.0.1 TCP_MISS/302 640 GET http://guru.avg.com/softw/80free/upd...553u15321v.bin - DIRECT/193.86.3.38 text/html
1216124519.333 3733 189.10.203.25 TCP_MISS/302 734 GET http://guru.avg.com/softw/80free/upd...553u15321v.bin - DEFAULT_PARENT/127.0.0.1 text/html
1216124520.682 1329 189.10.203.25 TCP_OFFLINE_HIT/200 309102 GET http://downloadfree.avg.com/update/u...553u15321v.bin - NONE/- application/octet-stream
216124642.836 121718 189.10.203.25 TCP_MISS/302 730 GET http://guru.avg.com/softw/80free/upd...sb_25d249c.bin - DEFAULT_PARENT/127.0.0.1 text/html
1216124642.938 35 189.10.203.25 TCP_OFFLINE_HIT/200 9461 GET http://downloadfree.avg.com/update/x8xplsb_25d249c.bin - NONE/- application/octet-stream

1216124643.725 737 127.0.0.1 TCP_MISS/302 636 GET http://guru.avg.com/softw/80free/upd...sc_33d329c.bin - DIRECT/193.86.3.38 text/html
1216124643.726 740 189.10.203.25 TCP_MISS/302 730 GET http://guru.avg.com/softw/80free/upd...sc_33d329c.bin - DEFAULT_PARENT/127.0.0.1 text/html
1216124643.770 10 189.10.203.25 TCP_OFFLINE_HIT/200 1060 GET http://downloadfree.avg.com/update/x8xplsc_33d329c.bin - NONE/- application/octet-stream

to achando o nivel de miss muito alto tento em vista que é exatamente o mesmo arquivo que já baxei e em alguns momentos ele inclusive dah hit... 

outra pergunta quando da TCP MISS / 302 (Redirecionamento) ele não consome banda né? só manda pra outro host!?

optei por fazer isso

retirar estas linhas:

refresh_pattern avast.com/.*\.(def|vpu|vpaa|stamp|cgi) 1440 20% 10080 override-lastmod reload-into-ims ignore-privete
refresh_pattern avg.com/.*\.(bin|ctf|exe|dll|cgi) 1440 20% 10080 override-lastmod reload-into-ims ignore-private


e adicionar essas(vou fazer controle por tipo de arquivo não por tipo + dominio):

#Antivirus
#AVG
refresh_pattern -i \.bin$ 0 20% 4320 override-lastmod reload-into-ims override-expire
refresh_pattern -i \.ctf$ 0 20% 4320 override-lastmod reload-into-ims override-expire
#AVAST
refresh_pattern -i \.def$ 0 20% 4320 override-lastmod reload-into-ims override-expire
refresh_pattern -i \.vpu$ 0 20% 4320 override-lastmod reload-into-ims override-expire
refresh_pattern -i \.vpaa$ 0 20% 4320 override-lastmod reload-into-ims override-expire
refresh_pattern -i \.stamp$ 0 20% 4320 override-lastmod reload-into-ims override-expire


retirei a cache deny padrao do squid (QUERY) agora não tenho mais cache deny
ae não preciso tbm coloca cache allow facilita a vida os controles irei fazer por arquivo

aconselho a usarem:
balance_on_multiple_ip off

isso retira o loadbalance de um unico fqdn-dns
se por exemplo existe mamilo.Teta.com onde tem os ips que responde por ele:
1.2.3.4
1.2.3.5
1.2.3.6

ele vai pega sempre o primeiro e só em caso de falha vai para o segundo

facilitando o cache!

----------


## arium

será que tenho como controlar o ip em vermelho? hehe

1216125128.653 722 127.0.0.1 TCP_MISS/302 640 GET http://guru.avg.com/softw/80free/upd...553u15431u.bin - DIRECT/193.86.3.38 text/html

----------


## arium

para o avira -> antivir




```
        #AVIRA
        if ($url =~ /^http:\/\/dl[1-9]\.avgate\.net.*/) {
               $url =~ s/dl[0-9]/dl7/;
               print $fh "saida: $url\n";
               print "$url\n";
         }
```

 
1216126411.659 40 189.10.203.13 TCP_OFFLINE_HIT/200 498 GET http://dl7.avgate.net/upd/idx/master.idx - NONE/- text/plain
1216126412.358 126 189.10.203.13 TCP_OFFLINE_HIT/200 18973 GET http://dl7.avgate.net/idx/message.idx - NONE/- text/plain
1216126427.242 21 189.10.203.13 TCP_OFFLINE_HIT/200 838 GET http://dl7.avgate.net/upd/idx/classic-nt-en.idx - NONE/- text/plain
1216126428.184 2 189.10.203.13 TCP_OFFLINE_HIT/200 1203 GET http://dl7.avgate.net/upd/idx/vdf.info.gz - NONE/- application/x-gzip
1216126428.361 21 189.10.203.13 TCP_OFFLINE_HIT/200 901 GET http://dl7.avgate.net/upd/idx/specvir-nt.info.gz - NONE/- application/x-gzip
1216126430.683 8 189.10.203.13 TCP_OFFLINE_HIT/200 1971 GET http://dl7.avgate.net/upd/idx/ave2.info.gz - NONE/- application/x-gzip
1216126430.906 7 189.10.203.13 TCP_OFFLINE_HIT/200 880 GET http://dl7.avgate.net/upd/idx/info-w...-nt-en.info.gz - NONE/- application/x-gzip
1216126432.581 1206 189.10.203.13 TCP_OFFLINE_HIT/200 18973 GET http://dl7.avgate.net/idx/message.idx - NONE/- text/plain


entrada: http://dl2.avgate.net/upd/idx/vdf.info.gz
saida: http://dl7.avgate.net/upd/idx/vdf.info.gz
entrada: http://dl2.avgate.net/upd/idx/specvir-nt.info.gz
saida: http://dl7.avgate.net/upd/idx/specvir-nt.info.gz
entrada: http://dl2.avgate.net/upd/idx/ave2.info.gz
saida: http://dl7.avgate.net/upd/idx/ave2.info.gz
entrada: http://dl2.avgate.net/upd/idx/info-w...-nt-en.info.gz
saida: http://dl7.avgate.net/upd/idx/info-w...-nt-en.info.gz
entrada: http://dl2.avgate.net/idx/message.idx
saida: http://dl7.avgate.net/idx/message.idx

----------


## galahad

Muito boa as informações sobre o refresh_pattern e o load balance. Mas já comprovou quanto ao balanceamento dos ips de destino? Segundo o protocolo do DNS, quando você especifica mais de um IP para o mesmo host ele faz round robin, ou seja, cada vez que você consulta o servidor responsável por aquele domínio te passa um IP diferente e, até onde eu sei, isso não tem como ser controlado no cliente a não ser que ele faça cache da consulta de DNS o que pode acabar sendo muito ruim.

Quanto ao controle do IP em vermelho, acho que não tem como controlar... aquilo é só o Squid te informando qual foi o endereço que ele acessou para pegar o arquivo.

----------


## lucianogf

pessoal,

quando forem postar códigos usem [ code] [ /code] (sem espaços)

assim fica melhor a formatação e leitura.

aliás, tanto para os códigos, como já está sendo usado, quanto para as saídas do squid.

----------


## arium

> Muito boa as informações sobre o refresh_pattern e o load balance. Mas já comprovou quanto ao balanceamento dos ips de destino? Segundo o protocolo do DNS, quando você especifica mais de um IP para o mesmo host ele faz round robin, ou seja, cada vez que você consulta o servidor responsável por aquele domínio te passa um IP diferente e, até onde eu sei, isso não tem como ser controlado no cliente a não ser que ele faça cache da consulta de DNS o que pode acabar sendo muito ruim.
> 
> Quanto ao controle do IP em vermelho, acho que não tem como controlar... aquilo é só o Squid te informando qual foi o endereço que ele acessou para pegar o arquivo.


ele pega o primeiro ip que responder... 
dai entao trata aquele como o "pai das criança" caso ele falhar busca outro.
melhora bastante para o cache uma vez que vc vai ter um padrão.
pelomenos é o que eu acho! posso estar enganado.
mais estou usando até agora com sucesso.

----------


## arium

quanto ao windows update oque está na memoria ele cacheia mais só não guarda no hd...
antes ele usava tcp_miss /206 que é comum em arquivos fracionados...
podem me passar mais informaçoes sobre o parametro method HEAD?

nos temos que saber como gravar a Meta-informação desse comando também!



```
16157219.274    258 189.10.203.32 TCP_MISS/200 472 HEAD http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0807152119 - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216157221.798    246 127.0.0.1 TCP_MISS/200 378 HEAD http://download.windowsupdate.com/v7/microsoftupdate/a/selfupdate/WSUS3/x86/Other/musetup.cab?0807152119 - DIRECT/64.86.107.32 application/octet-stream
1216157221.799    251 189.10.203.32 TCP_MISS/200 472 HEAD http://download.windowsupdate.com/v7/microsoftupdate/a/selfupdate/WSUS3/x86/Other/musetup.cab?0807152119 - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216157226.209    763 127.0.0.1 TCP_MISS/200 18214 GET http://download.windowsupdate.com/v7/microsoftupdate/a/selfupdate/WSUS3/x86/Other/musetup.cab?0807152119 - DIRECT/64.86.107.32 application/octet-stream
1216157226.210    766 189.10.203.32 TCP_MISS/200 18308 GET http://download.windowsupdate.com/v7/microsoftupdate/a/selfupdate/WSUS3/x86/Other/musetup.cab?0807152119 - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216157235.146    252 127.0.0.1 TCP_MISS/200 379 HEAD http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807152119 - DIRECT/64.86.107.32 application/octet-stream
1216157235.147    257 189.10.203.32 TCP_MISS/200 473 HEAD http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807152119 - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216157259.749     10 189.10.203.32 TCP_MEM_HIT/200 480 HEAD http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0807152119 - NONE/- application/octet-stream
1216157289.772      2 189.10.203.20 TCP_MEM_HIT/200 486 HEAD http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807152119 - NONE/- application/octet-stream
1216157290.041    178 127.0.0.1 TCP_MISS/200 379 HEAD http://www.update.microsoft.com/v7/windowsupdate/selfupdate/wuident.cab?0807152120 - DIRECT/65.55.192.61 application/octet-stream
1216157290.042    182 189.10.203.20 TCP_MISS/200 478 HEAD http://www.update.microsoft.com/v7/windowsupdate/selfupdate/wuident.cab?0807152120 - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216157290.391    245 127.0.0.1 TCP_MISS/200 379 HEAD http://download.windowsupdate.com/v7/windowsupdate/a/selfupdate/WSUS3/x86/Vista/wsus3setup.cab?0807152120 - DIRECT/64.86.107.32 application/octet-stream
1216157290.392    252 189.10.203.20 TCP_MISS/200 478 HEAD http://download.windowsupdate.com/v7/windowsupdate/a/selfupdate/WSUS3/x86/Vista/wsus3setup.cab?0807152120 - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216157295.688    245 127.0.0.1 TCP_MISS/200 379 HEAD http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807152120 - DIRECT/64.86.107.32 application/octet-stream
1216157295.688    252 189.10.203.20 TCP_MISS/200 478 HEAD http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807152120 - DEFAULT_PARENT/127.0.0.1 application/octet-stream
1216157309.822      2 189.10.203.20 TCP_MEM_HIT/200 486 HEAD http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807152120 - NONE/- application/octet-stream
```

----------


## arium

acho que com o windows update vamos ter de fazer o seguinte


mete o apache.... fazer o download e manda redirecionar pro nosso apache!

pq a jaba do squid nao tah fazendo cache de todos os metadata!


ae roda um

if widowsupdate.com

laço
compara cab remoto com cab local
se ok! redireciona e faz download local
senao faz remoto.


é possivel ?

----------


## lucianogf

o negócio seria ver como funciona o "windows update service server", ver como é o funcionamento dele e quem sabe fazer um parecido no linux, e que seja transparente ao usuário.

----------


## arium

da forma a qual coloquei seria transparente.... só que como nao manjo perl se nosso amigo frederico puder colaborar está feito

----------


## tianguapontocom

Cabras esse trem e pra queimar com 2.6 ou so com 2.7 ou 3.0, pq se n me engano no 2.6 nao tem essa função.
Aki to implementando o cache full no squid 3.0 porem n migrei por conta das grandes mudanças q teria q fazer e pra fazer terei que parar e pra não parar terei q montar outro servidor e pra montar outro servidor falta akela velha e sempre QI.
Quem Indique onde ta a grana hehehehehe
Que tar nois se amazelar e montar um Wi-Ki com *url_rewrite + Cache full com Squid 3.0 + HTB Tools + Um monte de gente pertubando no MSN e nois ficando tudo careca com esse povo?*
*Seria de bom tamanho pro forum* 
Tudo isso amazelado da pra fazer trankilo trankilo o cache do your tube com o perl falado logo mais arriba. Imagina ai, os AP tudo se ferrando hehehehe to dentro, se alguem tiver a favor e quiser dar continuidade vamos la to dentro

----------


## arium

é pra 2.7 .... 2.6 tá fora


nem precisa falar em continuidade...
não vo desistir disso! :P

----------


## arium

Em uma entrada como esta:


```
 [URL]http://download.windowsupdate.com/vista/windowsupdate/redir/vistawuredir.cab?0807160141[/URL]
```

 Ele verificariq se o arquivo: vistawuredir.cab?0807160141


se encontra dentro de:


```
 [URL]http://localhost/WUP[/URL]
```

 se se encontrar transforma:


```
    [URL]http://download.windowsupdate.com/vista/windowsupdate/redir/vistawuredir.cab?0807160141[/URL]
```

 em:


```
  [URL]http://localhost/WUP/vistawuredir.cab?0807160141[/URL]
```

 senão


```
wget [URL="http://download.windowsupdate.com/vista/windowsupdate/redir/vistawuredir.cab?0807160141"]http://download.windowsupdate.com/vista/windowsupdate/redir/vistawuredir.cab?0807160141 [/URL]
na pasta do apache... depois
saida igual a entrada(não redireciona);
```

 sacaram a jogada?

Frederico consegue?

nessa modalidade eu tenho até um padrao para youtube  :Smile:  dpz falo se tiver condiçoes

Abraços!

----------


## lucianogf

o youtube já não tem um url_rewrite?

o do wiki do squid não funciona?

----------


## arium

não tive sucesso com ele... e depende de ip.. e vc sabe que depender de um range de ip é tiro no pé inda mais se tratando do google  :Wink: 


mais eu tenho uma ideia legal.. vamos ver se o nosso amigo resolve o WUP ants daquela maneira...

o lance do youtube vai ser parecido .... não igual.. parecido hehe  :Wink:

----------


## lucianogf

você chegou a testar o url_rewrite para o google earth (maps)??
isso seria interessante também, ainda mais que o negócio não atualiza nunca.. hehehehe
daria pra colocar o refresh_pattern dele pra eternidade e não iria atualizar ainda..

----------


## arium

é jpg?

----------


## arium

galahad evaporo :/

----------


## lucianogf

> é jpg?


não sei que tipo de arquivo é



```
1216308997.738    390 10.0.110.1 TCP_MISS/200 19217 GET http://kh.google.com/flatfile? - DIRECT/64.233.161.91 application/octet-stream
1216308997.941    447 10.0.110.1 TCP_MISS/200 27200 GET http://kh.google.com/flatfile? - DIRECT/64.233.161.91 application/octet-stream
1216308998.343    584 10.0.110.1 TCP_MISS/200 21326 GET http://kh.google.com/flatfile? - DIRECT/64.233.161.91 application/octet-stream
1216308998.559    844 10.0.110.1 TCP_MISS/200 18838 GET http://kh.google.com/flatfile? - DIRECT/64.233.161.91 application/octet-stream
1216308998.753    381 10.0.110.1 TCP_MISS/200 17301 GET http://kh.google.com/flatfile? - DIRECT/64.233.161.91 application/octet-stream
```

 vi em algum lugar, não lembro onde, acho que foi no wiki do squid o url_rewrite pro google earth.

----------


## arium

já vi gente usando assim:

refresh_pattern -i kh.google 1440 20% 10080 override-expire override-lastmod 


mais sei lah..........

fazer o redirecionamento disso eh barbada mesma coisa que do orkut
kh01.google.com bla bla bla
dpz damu um look

bem vamo ve se nosso progamador perl da sinal de vida =p temos que resolver o wup primeiro ehhee  :Big Grin:

----------


## lucianogf

sim sim...

o negócio é encontrarmos os serviços consumidores de banda e que não são muito atualizáveis para podermos guardar ao máximo no cache.

agora com relação ao wus isso sim.

----------


## arium

isso dae!
foda que o home morreu heheheh

----------


## lucianogf

calma jovem, não é todo mundo que pode ficar somente na frente do micro.. hehehe

----------


## arium

heheheh

veio tomara deus que o grande frederico consiga fazer aquilo... to com umas ideia muito doida =p!!! 


bá bem que podia tbm ter outro de alma buena tipo ele pra ajudar nos perl neh!?
depois garanto que vai te um bando de nego quernedo baixa e rodar!!! isso que eh foda!! eheh faze oq!!

----------


## lucianogf

> heheheh
> 
> veio tomara deus que o grande frederico consiga fazer aquilo... to com umas ideia muito doida =p!!! 
> 
> 
> bá bem que podia tbm ter outro de alma buena tipo ele pra ajudar nos perl neh!?
> depois garanto que vai te um bando de nego quernedo baixa e rodar!!! isso que eh foda!! eheh faze oq!!


isso é fato!

pior de tudo não é o cara pegar tudo pronto e colocar pra rodar, o pior são aquelas perguntas:




> "como faz?"
> "onde coloca?"
> "que parte do mikrotik fica isso?"
> "aqui está aparecendo uma mensagem assim: "'atensão' está com erro ortográfico", o que devo fazer?"
> "coloquei essas regras pra rodar e o dólar subiu, o que fiz de errado?"


aí quando o tópico estiver com umas 50 páginas começam as mesmas perguntas porque quem começou a ler do final tem preguiça de ler tudo... heheheh

----------


## arium

AHHAAHAHAH é a mais pura realidade!

depois quando o cara manda lê o tópico todo(com educação no tópico...mais em pensamento chamando o cara de deitado) ainda é a nossa mãe a que não presta :P

----------


## galahad

Oláááááááááá enfermeiros!

Estou de volta, depois de uma semana viajando pelo interior de MG e do ES, sem sinal de celular, sem telefone, sem internet, sem comunicação e com muita poeira na lata.  :Smile: 

Vou me inteirar dos posts e ver se consigo fazer o lance do WUS. Não sou bem um programador Perl, mas dou meus pulos, python e bash são mais minha praia.  :Wink: 

Alguém falou sobre utilizarmos o wiki do UnderLinux para discutir este tópico, eu gostei da idéia, o que vocês acham?

Inté!

----------


## arium

graças a deus que vc voltou fred =D hehehe

veio vamo dah um pau nesse lance do WUP que eh algo mais sucinto .. que ae jah tenho outras ideias pra
deixar a coisa bem mais encorpadas que usam a base parecida de um "cache secundario em uma pasta do apache"


dpz agente difunde melhor  :Wink:

----------


## achiodi

DAewww bando de lokos...
Vou entrar na brincadeira tambem.
Daewww luiz... vamo afofa essa parada ai... to com minha maquina montadinha com 1tera de espaco pra cache.
hauHAuhauHA

----------


## arium

certeza brother!!!! =D super gemiossss ativarrrr hudahsiuhdiuahsd

----------


## lucianogf

> DAewww bando de lokos...
> Vou entrar na brincadeira tambem.
> Daewww luiz... vamo afofa essa parada ai... to com minha maquina montadinha com 1tera de espaco pra cache.
> hauHAuhauHA


opa..

antes fosse brincadeira.. hehehe

1 tera para cache? os HDs são SCSI?

----------


## achiodi

O Arium...

Mas a primori...
Eh pra mkt isso?? onde eu coloco essas configs??
hauHAUhauHAUha


Cara, peguei os arquivos... vou analisar eles e deixar meu proxy rodando esse find.
Se tu tiver alguma documentacao adicional manda pra mim por email.

----------


## cleciorodrigo

Rapaz ainda bem que li o topico desde o inicio, e vi que eh bricandeira pq o pessoal que tah na luta aqui ia infarta kkkkk ae pessoal apesar de nao ter lah grande conhecimento em linux, to acompanhando o topico.

Abraços e boa sorte




> O Arium...
> 
> Mas a primori...
> Eh pra mkt isso?? onde eu coloco essas configs??
> hauHAUhauHAUha

----------


## galahad

Arium,

posta aqui, por favor, o script perl completo como está hoje. Deixa eu ver o que eu consigo fazer com ele.

----------


## arium

> O Arium...
> 
> Mas a primori...
> Eh pra mkt isso?? onde eu coloco essas configs??
> hauHAUhauHAUha
> 
> 
> Cara, peguei os arquivos... vou analisar eles e deixar meu proxy rodando esse find.
> Se tu tiver alguma documentacao adicional manda pra mim por email.


não apenas pra mikrotik ... oque tamo fazendo aqui é buscar um proxy o mais perfeito possivel  :Wink: 
um que REALMENTE economize banda!  :Smile: 

que não duplique arquivos e que saiba trabalhar com dns dinâmico  :Smile:  um proxy mais "inteligente eu diria" =)

----------


## arium

> Rapaz ainda bem que li o topico desde o inicio, e vi que eh bricandeira pq o pessoal que tah na luta aqui ia infarta kkkkk ae pessoal apesar de nao ter lah grande conhecimento em linux, to acompanhando o topico.
> 
> Abraços e boa sorte



valeu as boas intenções irmão =D mais tu manja d++++ de mkt entao provavelmente seja MUITO UTIL pra voce tbm =D

abração =D

----------


## arium

> Arium,
> 
> posta aqui, por favor, o script perl completo como está hoje. Deixa eu ver o que eu consigo fazer com ele.



vai lá grande fred!!! deus de abençoe na jornada!!! tem torcida jah!!! hehehehe

o esquelo do que é para fazer tá na página 15  :Wink: 




```
#!/usr/bin/perl
#X[0]-> URL EX: IMG1.ORKUT.COM
#X[1]-> CLIENT IP: 189.10.206.13/ANGEL.GINET.COM.BR
#X[2]-> -
#X[3]-> GET ou POST
#X[4]-> -
#X[5]-> MYIP : 189.10.206.1 OU 127.0.0.1
#X[6]-> MYPORT EX: 8012 
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        $metodo = $X[3]; 
        print $fh "entrada: $url\n";
        #ORKUT
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        #AVIRA
        if ($url =~ /^http:\/\/dl[1-9]\.avgate\.net.*/) {
               $url =~ s/dl[0-9]/dl7/;
               print $fh "saida: $url\n";
               print "$url\n";
         }
        #AVAST
        if ($url =~ /^http:\/\/download[0-9]{3}.avast.com/) {
                $url =~ s/download[0-9]{3}/download626/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        #AVG 
        if ($url =~ /^http:\/\/akamai.avg.com/) {
                $url =~ s/akamai/downloadfree/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        if ($url =~ /^http:\/\/update.avg.com/) {
                $url =~ s/update/guru/;
                print $fh "saida: $url\n";
                print "$url\n";
        }                                                            
        else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
}
```

----------


## tianguapontocom

> opa..
> 
> antes fosse brincadeira.. hehehe
> 
> 1 tera para cache? os HDs são SCSI?


nada, ja tem esses hd da samsung de 1 tera SATA e uns 800 conto

----------


## lucianogf

> nada, ja tem esses hd da samsung de 1 tera SATA e uns 800 conto


perguntei se é SCSI pq se não for não vai adiantar muito, além de ficar lento em pouco tempo o HD vai popau!

----------


## arium

se for aufs duramais .... mais o canal eh fazer raid 5 com 2 hd de 1tb ae além de acelerar tbm divide o io  :Wink: 


ps: NUNCA COMPREM HD SANSUNG É MUITOOOOOOOO RUIMMM!!!!!
seagate eh no mínimo 70% melhor e mais duravel!!

----------


## lucianogf

> se for aufs duramais .... mais o canal eh fazer raid 5 com 2 hd de 1tb ae além de acelerar tbm divide o io 
> 
> 
> ps: NUNCA COMPREM HD SANSUNG É MUITOOOOOOOO RUIMMM!!!!!
> seagate eh no mínimo 70% melhor e mais duravel!!


RAID 5 com 2 HDs? até onde sei precisa de, no mínimo, 3 HDs pra fazer RAID 5.

Outra coisa, não adianta fazer raid para usar com cache do squid, não vai aumentar a performance. É melhor usar um HD para cada cache.

----------


## achiodi

O arium me falou desse raid 5. esse au ainda nao testei,
mas nos testes que fiz em raid 0, a performance foi inferior do que separar o cache em varios hds.
vou usar aki 4 hds sata2 de 250gb cada...
tenho 6 hds novinhos da maxtor aki, pois samsung eh lixo, mas a mobo soh suporta 4. Agora com essa melhoria do aufs vou mudar pra ver.. to soh esperando os resultados dos testes.
O diskd destroi os discos.

----------


## arium

realmente precisa 3 ou mais desculpe pelo engano...

mais aumenta a performace sim! e também deixa mais homogênio o IO

senão até não teria o porque de sua existência =p

----------


## lucianogf

Pessoal, cache e raid estão fora do escopo do tópico, mas vou pedir para o Alexandre explicar o porquê não melhor a performance com o squid.

----------


## alexandrecorrea

o squid detecta o que ele "tem pra usar" pelo cache_dir (no caso de hd).. vc monta uma puta raid.. o squid considera como um unico hd... criando um numero menor de threads (se nao engano 16 por cache_dir) ... entao se voce colocar VARIOS cache_dir (logicamente em hds separados) .. a performance vai ser maior do que na raid !!! esta discussao esta na lista squid-users @ squid-cache.org ... 

 :Smile:

----------


## arium

ai você esta falando em acessar arquivos distintos...

por exemplo

vamos supor um video youtube

você tem 3 cache dir... em 3 hd... ele vai lah no hd X onde tah o video e pega!

agora no raid5

ele vai lah e pega

parte no hd 1 parte no hd2

não ficaria mais rápido assim?! aumentando o troughtput dos discos?

acho que podemos questionar em LARGE FILES isso sei lah... eu falei em base teórica para o andré não fiz o teste.. depois que acabar com isso aqui irei fazer.

----------


## lucianogf

a questão do raid e squid é assunto para outro tópico, vamos seguir o escopo deste.

----------


## achiodi

cara, faz assim, continua os testes de aufs que eu testo o raid5.
Vou tira runs 15 dias pra trabalhar em cima do cache... vamos resolvendo essa pendenda do url_rewrite e em paralelo vou testando pra ver no que da.

ai dpois juntamos os resultados dos testes...

----------


## lucianogf

pessoal, sobre o wiki, se quiserem trabalhar com os scripts lá, me enviem todo material que já temos, incluindo parâmetros de configuração, como se fosse um tutorial, aí passo pro pessoal do wiki colocar lá, depois fica fácil fazer alterações.

----------


## arium

acho melhor esperar um pouco mais! vamos pelomenos fazer o WUP fungar.

----------


## arium

> cara, faz assim, continua os testes de aufs que eu testo o raid5.
> Vou tira runs 15 dias pra trabalhar em cima do cache... vamos resolvendo essa pendenda do url_rewrite e em paralelo vou testando pra ver no que da.
> 
> ai dpois juntamos os resultados dos testes...



beleza fi! e coloca tuas partições em Raisefs com jornaling =) e parametro de montagem noatime

----------


## lucianogf

Pessoal, vou repetir, o tópico é para discussões sobre url_rewrite, se continuar outros assuntos, além de ficar bagunçado terei que fazer algo.

quem quiser fazer qualquer tipo de teste sobre raid e squid, faça, abra um novo tópico e se quiser pode deixar somente a url do mesmo aqui neste.

----------


## arium

hehehhe é mano veio! mais bem que vc ajudou na discução do raid até trouxe o alexandre pro tópico hehehhe :P

----------


## achiodi

Por nada nao mano, mas que tal vc parar de se preocupar com o escopo do topico e contribuir com algo?
O objetivo disso eh fazer um squid samurai, mesmo que pra isso fujamos um pouco do assunto!
E se vc quiser fazer algo, pois bem, vai em frente...arrumamos outra forma de comunicação e quem sai perdendo eh o pessoal aqui do forum pq nao sabera como termina isso.

 :Wink:

----------


## arium

fred achei essa funçao system do perl pra chamar o sistema... saca soh +- oque vc tem que fazer:


entrada=www.windowsupdate.com/13321/432423/1231/5576a/213812831.cab

arquivo=213812831.cab (o que tiver ants do final até a ultima barra pois as vezes está assim 217317293712.cab?2819731)

Array=system("/bin/ls /var/www/wup/");

para 0 até fim

se arquivo igual a arquivo
então 
$url="http://ip-localhost/WUP/arquivo";
print "$url\n";
fim
senão
system("cd /var/www/wup && /bin/wget http://www.windowsupdate.com/31277129739128.cab ");
print $entrada\n";

----------


## lucianogf

> hehehhe é mano veio! mais bem que vc ajudou na discução do raid até trouxe o alexandre pro tópico hehehhe :P


sim, pedi ao alexandre que desse uma explicação do porque não melhora a performance do squid o raid, fiz isso pensando que o assunto não continuaria neste tópico, o que não aconteceu.

----------


## lucianogf

> Por nada nao mano, mas que tal vc parar de se preocupar com o escopo do topico e contribuir com algo?
> O objetivo disso eh fazer um squid samurai, mesmo que pra isso fujamos um pouco do assunto!
> E se vc quiser fazer algo, pois bem, vai em frente...arrumamos outra forma de comunicação e quem sai perdendo eh o pessoal aqui do forum pq nao sabera como termina isso.


Não! Não vou parar de me preocupar com o escopo do tópico.

Um dos porque estou aqui, além de ajudar com conteúdo é ajudar com organização.

Acredito que você saiba o que é organização, então não preciso me delongar mais!

----------


## achiodi

Que estranho... ninguem mais postou nada... aconteceu alguma coisa?

 :Angel:

----------


## galahad

Aconteceu trabalho... hehehehe  :Smile: 

Estou tentando implementar a sugestão do Arium no script. Assim que tiver alguma coisa, eu posto por aqui.

----------


## paulojrandrade

:Frown:  Ai pessoal !!! blz voces hein... colocam o melzinho na boca e depoistiram, fica todo mundo sussa né... legal hein... uns são o bixo da goiaba, outros o trem q pula. Até criticam quem nao sabe nada, nem fazer pergunta besta pode!! ai criam um tópico super interessante, se estapeiam e deixam todos a ver navio. Belas pelas palavras, ótimos questinamentos. Mas, perai !!! qual a função do forum ? cade a liberdade ? e quem ficou interessado ? Assim nao dá !!! Acho q deviam muito é pensar antes de escrever, pelo que sei os foruns são para construir e nao se exaltarem e deixarem os outros a ver navio. Não se esqueçam q na primeira vez q vc posta no forum geralmente é uma dúvida, e essa duvida é respondida bem ou mal, pois essa é a função de um forum. Pq então se negar a ajudar os outros ??? Na minha terra, o q aprendi com os outros devo ensinar aos outros da mesma maneira q me ensinaram.

Abraço a todos, e espero q esse assunto siga enfrente, pois é de grande utilidade a "todos", dos mais experientes até os mais "ignorantes". 

Que os mediadores fiquem de olho.....

admito  :Withstupid:

----------


## lucianogf

> Ai pessoal !!! blz voces hein... colocam o melzinho na boca e depoistiram, fica todo mundo sussa né... legal hein... uns são o bixo da goiaba, outros o trem q pula. Até criticam quem nao sabe nada, nem fazer pergunta besta pode!! ai criam um tópico super interessante, se estapeiam e deixam todos a ver navio. Belas pelas palavras, ótimos questinamentos. Mas, perai !!! qual a função do forum ? cade a liberdade ? e quem ficou interessado ? Assim nao dá !!! Acho q deviam muito é pensar antes de escrever, pelo que sei os foruns são para construir e nao se exaltarem e deixarem os outros a ver navio. Não se esqueçam q na primeira vez q vc posta no forum geralmente é uma dúvida, e essa duvida é respondida bem ou mal, pois essa é a função de um forum. Pq então se negar a ajudar os outros ??? Na minha terra, o q aprendi com os outros devo ensinar aos outros da mesma maneira q me ensinaram.
> 
> Abraço a todos, e espero q esse assunto siga enfrente, pois é de grande utilidade a "todos", dos mais experientes até os mais "ignorantes". 
> 
> Que os mediadores fiquem de olho.....
> 
> admito


qual sua preocupação amigo?

o tópico está correndo normalmente.

----------


## achiodi

Sim, mas querem tudo na mao??
melzinho na chupeta?
e pesquisar? quebrar a cabeca, ficar horas no google pesquisando e testando solucoes que geralmente nao funcionam?

Afinal, vc ensina a pescar, nao entrega o peixe.

 :Wink:

----------


## arium

*paulojrandrade, 
*calma brother que o fred anda ocupado pra scriptar!
e dependemos dele... se vc conhece algum scripter perl.. pode indicar o tópico para acelerar o processo.
não precisamos de nada avançando

quando a perguntas não me importo do nível em que elas venham...
não nasci sabendo... tão pouco morrerei sabendo tudo.. então se você quiser perguntar pergunte
não precisa ter vergonha nenhuma.. eu irei tentar responde-la se tiver a meu alcance. 


Abraço

----------


## Tacuru

Amigos,

tenho acompanhando vocês desde o primeiro post do Ariun, antes de ser modificado para url_rewrite, me interessou bastante e não vejo a hora do desfecho. Meu server, roda nesse momento o squid 3.0 em Freebsd com diskd, tive um ganho muito siginificativo, porem acho que poderia ficar ainda melhor. Não sei nada de perl, infelizmente, mais vou ver no que posso ajudar.

----------


## achiodi

cara, o diskd vai acabar com teu disco..
ja perdi varios com ele... muda pra aufs...
tambem rodo o squid no freebsd.

----------


## Tacuru

Existe uma diretiva no windows xp que aponta para micrososft. Fical em secpol.msc > Configuração do computador > Modelos Administrativos > Windows componente > Windows update > Specify intranet Microsoft update service location. Aqui eu na empresa, visualizei usando o rsop.msc, pois eu sei que a diretiva foi incluida pelo AD e eles apontaram para um server wsus interno. Não sei se pode, mais se apontarmos para o server squid?

----------


## achiodi

complica demais... tem que ser de forma transparente pro usuario.

----------


## achiodi

Fred, dei uma boa olhada no script e pesquisei em sites documentacao sobre perl e consegui entender bem o funcionamento dele.
Estou quase apto pra ajudar tambem na parte de perl.
soh tenho 2 duvidas.

1ª - qual a funcao disso: $|=1;
ja pesquisei um monte e nao econtrei.

2ª - open $fh, ">>/tmp/debug_url_redirect.log";
se esse comando esta pegando o conteudo do arquivo e jogando pra variavel $fh, como eh que o array @x recebe o conteudo pra que o split separe o string?

nao consegui entender isso.

----------


## Tacuru

Espero não estar bangunçando nada.
Veja se ajuda:
Autor: Carlos Duarte, apostila encontrada no apostilando.
 
*2.2. Arrays*Prefixam-se por @ (ex: @a), contêm zero ou mais escalares, e indexam-se numericamente:@a = (1, "xpto", 3.5); # dois números e uma string
@b = (); # array vazio
@c = (1..5) # mesmo que (1,2,3,4,5)
@copy = @c; # copia de @c
$copy[0] = 12; # set do primeiro elemento a 12: (12, 2,3,4,5)*Notas*:
 em modo escalar ("scalar @copy", ou "[email protected]"), o valor de @copy é o número de elementos
no _array_:
for ($i=0; $i<@a; $i++) { print $a[$i],"\n"; }escreve todos os elementos de @a
 os _arrays_ (como tudo o resto) em _perl_ são _zero based_, i.e. o primeiro elemento de um _array_, tem index 0
($a[0]) e o último tem index @a-1 ou $#a ($a[@a-1] ou $a[$#a])

*2.3. Arrays associativos (hashes)*Prefixam-se por % (ex: %a), contêm zero ou mais pares chave/valor (_key/value_), em que ambos são
escalares, e indexam-se por _strings_.
Internamente, *não é mantida a ordem* dos elementos que constituiem a _hash_1 (ver funções úteis para
arrays associativos, §9.5, *p*13).
%a = ("carlos", 12, "joao", 34, "xpto", 15);
$b = $a{"carlos"} # $b vale 12
$a{joao} = 44; # $a{joao} muda de 34 para 44
*Notas*:
 o número de elementos de uma lista tem que ser par, para poder ser atribuída a uma _hash_.

----------


## achiodi

nao ajudou muito mas valeu a iniciativa!

 :Smile:

----------


## galahad

Desculpem o sumiço, mas estou mais do que atrapalhado no serviço... fui mudado de função e as coisas agora estão ainda mais corridas, mas vou tentar ainda manter minha freqüência por aqui.

Vamos às dúvidas... como eu já disse antes, eu não sou programador Perl, só dou alguns pulos.




> 1ª - qual a funcao disso: $|=1;
> ja pesquisei um monte e nao econtrei.
> 
> *Também não faço idéia do que seja isso :P*
> 
> 2ª - open $fh, ">>/tmp/debug_url_redirect.log";
> se esse comando esta pegando o conteudo do arquivo e jogando pra variavel $fh, como eh que o array @x recebe o conteudo pra que o split separe o string?
> 
> *Esse comando na verdade abre a variável $fh como um stream e coloca também as saídas dela para o arquivo /tmp/debug_url_redirect.log, não tem nada diretamente a ver com o array @X. Se eu entendi direito, o array @X recebe o valor do $| que me parece ser algo como o $* do shell.*


Pessoal, dêem uma olhada no seguinte url_redirector: Jesred

----------


## parlare

> MANINHOOOOOOOOOOOOOO brilhow
> era só questão de um intendimento melhor:
> 
> 
> saca soh
> 
> 
> ```
>   GET http://img1.orkut.com/images/small/1215132839/36261131/ln.jpg
> ...



*************************************************************************************************************
Boa tarde amigo Arium. Estou acompanhando seu tópico (está muito show), mas agora que fui implemetar em meu squid3 e não rolou. Da erro ao restartar o squid. 
Se puder dar umas dicas de como implementar o url_rewrite pro orkut e avg seria muito grato.
Obrigado
Aqui está meu squid.conf. 

http_port 3128 transparent
visible_hostname jupiter
error_directory /usr/share/squid3/errors/Portuguese
cache_mem 150 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 30 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid3 16384 16 256
cache_access_log /var/log/squid3/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280
###ORKUT####
refresh_pattern orkut.com/.* 10080 100% 43200 override-expire override-lastmod reload-into-ims ignore-reload

#Antivirus
#AVG
refresh_pattern -i \.bin$ 0 20% 4320 override-lastmod reload-into-ims override-expire
refresh_pattern -i \.ctf$ 0 20% 4320 override-lastmod reload-into-ims override-expire

##### Cache do Windows Update #####
#refresh_pattern au.download.windowsupdate.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
#refresh_pattern download.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
#refresh_pattern msgruser.dlservice.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
#refresh_pattern windowsupdate.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
#refresh_pattern www.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
################################

#auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
#acl autenticados proxy_auth REQUIRED
#http_access allow autenticados

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255

acl QUERY urlpath_regex cgi-bin \?
acl FORCE dstdomain .orkut.com .orkut.com.br
cache allow FORCE
cache deny QUERY

#storeurl_rewrite_children 70
#acl store_rewrite_list dstdomain .orkut.com
#url_rewrite_access allow store_rewrite_list
#url_rewrite_access deny all
#url_rewrite_program /etc/squid/store_url_orkut2

acl tube dstdomain .youtube.com
cache deny tube

acl SSL_ports port 443
acl SSL_ports port 563
acl Safe_ports port 80
acl Safe_ports port 21
acl Safe_ports port 443 563
acl Safe_ports port 70
acl Safe_ports port 210
acl Safe_ports port 1025-65535
acl Safe_ports port 280
acl Safe_ports port 488
acl Safe_ports port 591
acl Safe_ports port 777
acl Safe_ports port 901

acl purge method PURGE
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
#acl proibidos dstdom_regex "etc/squid/proibidos"
#http_access deny proibidos
acl redelocal src 192.168.2.0/24 192.168.3.0/24
http_access allow localhost
http_access allow redelocal
http_access deny all

********************************************************************************************
e aqui seu script em perl, que está na pasta /etc/squid3/........

#!/usr/bin/perl
$|=1;
while (<>) {
open $fh, ">>/tmp/debug_url_redirect.log";
@X = split;
$url = $X[0];
$client = $X[1];
$nada = $X[2];
$metodo = $X[3];
$nada2 = $X[4];
$myip = $X[5];
$myport = $X[6];
print $fh "entrada: $url\n";
if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
$url =~ s/img[0-9]/img1/;
print $fh "saida: $url\n";
print "$url\n";
} else {
print $fh "nao redirecionado\n";
print "\n";
}
close $fh;
}




AGRADEÇO DESDE JÁ.....

----------


## lucianogf

qual foi a mensagem de erro nos logs do squid?

----------


## arium

> *************************************************************************************************************
> Boa tarde amigo Arium. Estou acompanhando seu tópico (está muito show), mas agora que fui implemetar em meu squid3 e não rolou. Da erro ao restartar o squid. 
> Se puder dar umas dicas de como implementar o url_rewrite pro orkut e avg seria muito grato.
> Obrigado
> Aqui está meu squid.conf. 
> 
> http_port 3128 transparent
> visible_hostname jupiter
> error_directory /usr/share/squid3/errors/Portuguese
> ...



amigo atraves da documentaçao do squid squid : Optimising Web Delivery
notei que o squid3 "pelomenos lá" não tem suporta ao url_rewrite


por isso aconselho a mudar para o 2.7

----------


## arium

bem... 

tive que me FU****** sozinho pra faze isso o Winupdate

ainda estou testando.. mais segue os logs!



```
Windows Update Redirecionado de http://download.windowsupdate.com/v6/windowsupdate/redir/wuredir.cab?0807301415 Para http://localhost/WINUP/wuredir.cab?0807301415
Windows Update Redirecionado de http://download.windowsupdate.com/v6/windowsupdate/redir/wuredir.cab?0807301415 Para http://localhost/WINUP/wuredir.cab?0807301415
Windows Update Redirecionado de http://download.windowsupdate.com/v6/windowsupdate/redir/wuredir.cab?0807301415 Para http://localhost/WINUP/wuredir.cab?0807301415
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807301418 Para http://localhost/WINUP/wuredir.cab?0807301418
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807301418 Para http://localhost/WINUP/wuredir.cab?0807301418
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807301418 Para http://localhost/WINUP/wuredir.cab?0807301418
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0807301418 Para http://localhost/WINUP/wuredir.cab?0807301418
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/a/selfupdate/WSUS3/x86/Other/wsus3setup.cab?0807301418 Para http://localhost/WINUP/wsus3setup.cab?0807301418
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/a/selfupdate/WSUS3/x86/Other/wsus3setup.cab?0807301418 Para http://localhost/WINUP/wsus3setup.cab?0807301418
```

 

bem resumindo... tive que "aprender perl" testar e me ferrar e ferrar e ferrar e ferrar....

bem... o winup tah quase morto...

quando acabarem-se os testes irei postar como fazer.. pq acho eu que devo isso!

e dai partirei para o youtube e cia...

bem quanto a isso NAO IREI POSTAR ABSOLUTAMENTE NADA se não tiver cooperação de ninguem!
por isso preciso de um programador PHP e alguem que ajude no perl a ideia eu jah tenho.

essas pessoas vao assinar a autoria em conjunto comigo.. só preciso de umas 3 horas de trabalho de cada um por semana
e dedicaçao

aqui todo mundo gosto mais o fred foi o unico que conseguiu ajudar com o basico que sabia.. quando aperto nao deu mais..

e o andre o qual discutimos direto no msn! 

então infelizmente é isso to querendo uma equipe.. pq só um NÂO DÁ!
e se é pra ser soh eu ou eu pago alguem pra fazer oque eu preciso pq nao vo te tempo sozinho
ou faço sozinho demoro mais me ralo mais...
nenhuma dessas hipoteses fará com que caia aqui a solução

infelizmente preciso tirar a preguiça de alguns de uma maneira drastica.. pq não é possivel que não tenham interessados aptos á tal!

mais uma vez:

um programador PHP
um scripter perl

3 horas por semana no max cada um.

pra fazer uma equipe..
esses vao conhecer toda a extrutura e o projeto
demais agente escolhe oque montar pra postar

se tiver que faze tudo sozinho proximo post e ultimo será o do windowsupdate soh pra verem que é capz!

não gosto disso mais fazer oq...

abraços

----------


## lucianogf

é galera, se não sabem programas, podem ajudar pesquisando.

não sei programar, mas pesquiso bastante no google, fico algumas horas na frente do micro procurando alguma coisa que possa ajudar, por enquanto o que encontrei não ofereceu grande coisa nos meus testes, mas continuo procurando.

arium, você teve esta mensagem no seu squid?



```
Jul 30 14:39:06 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
Jul 30 14:39:09 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
Jul 30 14:39:09 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
Jul 30 14:39:09 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
Jul 30 14:39:09 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
Jul 30 14:39:09 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
Jul 30 14:39:09 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
Jul 30 14:39:09 chuvisco squid[14112]: helperHandleRead: unexpected reply on channel 0 from url_rewriter #1 ''
```

 
foram estas páginas que você viu no wiki do squid? 
Features/StoreUrlRewrite - Squid Web Proxy Wiki
SquidFaq/SquidRedirectors - Squid Web Proxy Wiki

Fiz alguns testes com o Google Maps e não teve jeito, não fez cache, mesmo com configurações de refresh_pattern.

Não cheguei a testar com força do Avast e Avira.

----------


## arium

quanto ao que falei sobre o squid 3
esqueça
tah aqui
Squid 3.0.STABLE8 configuration file


tem o url_rewrite...


OPTIONS FOR URL REWRITING
-----------------------------------------------------------------------------

url_rewrite_programurl_rewrite_childrenurl_rewrite_concurrencyurl_rewrite_host_headerurl_rewrite_accessurl_rewrite_bypass


entao eh possivel sim user o script perl....
desculpem o engano...

quanto a não saber programar... o cara que nao sabe o MINIMO de scripting não sabe compilar um squid tbm instalar o um linux.. nao sabe faz que nem no perl aprende no soco. nao quero 10 quero ajuda de 2 pra pode fica um poquinho pra cada um e ficar bom pra tudo mundo...

o que eu quero de um programador php é uma coisa simples...
do perl é simples tbm..

quanto aqueles manuais que vc postou não funcionam nem adianta perder tempo.


quanto a messagem nao recebi... ainda

me passa seu url_rewrite e os parametros que vc tah usando
url_rewrite program e children

----------


## arium

> *************************************************************************************************************
> Boa tarde amigo Arium. Estou acompanhando seu tópico (está muito show), mas agora que fui implemetar em meu squid3 e não rolou. Da erro ao restartar o squid. 
> Se puder dar umas dicas de como implementar o url_rewrite pro orkut e avg seria muito grato.
> Obrigado
> Aqui está meu squid.conf. 
> 
> http_port 3128 transparent
> visible_hostname jupiter
> error_directory /usr/share/squid3/errors/Portuguese
> ...


limpa o cache.log
roda e cola aqui

----------


## lucianogf

os parâmetros que estou usando são os mesmos que você passou.



```
storeurl_rewrite_children 70
acl store_rewrite_list dstdomain .orkut.com .avast.com
url_rewrite_access allow store_rewrite_list
url_rewrite_access deny all
url_rewrite_program /etc/squid/store_url_dominios.pl
```

 
o tal do tempo pelo jeito tá complicado pra todo mundo.

----------


## arium

> os parâmetros que estou usando são os mesmos que você passou.
> 
> 
> 
> ```
> storeurl_rewrite_children 70
> acl store_rewrite_list dstdomain .orkut.com .avast.com
> url_rewrite_access allow store_rewrite_list
> url_rewrite_access deny all
> ...



o pau tah dando pra todos? ele redireciona algo?
os script tem as devidas permissoes e owner squid?

se nao redireciona algo e jah seto as perm jah zero o cache... tenta isso:

vai lah no site baixa o squid-2.7.STABLE2.tar.gz no /usr/src
tar -xvzf squid-2.7.STABLE2.tar.gz &&
cd squid-2.7.STABLE2 &&
./configure --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share/squid --sysconfdir=/etc/squid --sharedstatedir=/var/lib/squid --localstatedir=/var --libdir=/usr/lib --includedir=/usr/include --infodir=/usr/share/info --mandir=/usr/share/man --enable-dependency-tracking --enable-storeio="aufs,ufs,diskd,coss,null" --enable-carp --enable-icmp --enable-delay-pools --enable-snmp --enable-cachemgr-hostname=localhost --enable-arp-acl --enable-htcp --enable-forw-via-db --enable-cache-digests --enable-default-err-language="Portuguese" --enable-poll --enable-http-violations --enable-linux-netfilter --enable-truncate --enable-ntlm-fail-open --enable-stacktraces --enable-x-accelerator-vary --with-pthreads --with-aio --with-dl --with-large-files --enable-large-cache-files --enable-removal-policies="heap lru" &&
make &&
make install 
:P

----------


## lucianogf

> o pau tah dando pra todos? ele redireciona algo?
> os script tem as devidas permissoes e owner squid?
> 
> se nao redireciona algo e jah seto as perm jah zero o cache... tenta isso:
> 
> vai lah no site baixa o squid-2.7.STABLE2.tar.gz no /usr/src
> tar -xvzf squid-2.7.STABLE2.tar.gz &&
> cd squid-2.7.STABLE2 &&
> ./configure --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --libexecdir=/usr/libexec --datadir=/usr/share/squid --sysconfdir=/etc/squid --sharedstatedir=/var/lib/squid --localstatedir=/var --libdir=/usr/lib --includedir=/usr/include --infodir=/usr/share/info --mandir=/usr/share/man --enable-dependency-tracking --enable-storeio="aufs,ufs,diskd,coss,null" --enable-carp --enable-icmp --enable-delay-pools --enable-snmp --enable-cachemgr-hostname=localhost --enable-arp-acl --enable-htcp --enable-forw-via-db --enable-cache-digests --enable-default-err-language="Portuguese" --enable-poll --enable-http-violations --enable-linux-netfilter --enable-truncate --enable-ntlm-fail-open --enable-stacktraces --enable-x-accelerator-vary --with-pthreads --with-aio --with-dl --with-large-files --enable-large-cache-files --enable-removal-policies="heap lru" &&
> ...


das opções de configuração que eu uso para as suas existem algumas diferenças, abaixo está a junção das duas, o que está com um * é que tem nas minhas e nas suas não, e o que está com dois ** é que tem nas suas e nas minhas não.


```
#!/bin/bash
./configure \
--prefix=/usr \
--exec-prefix=/usr \
--bindir=/usr/bin \
--sbindir=/usr/sbin \
--libexecdir=/usr/libexec \
--sysconfdir=/etc/squid \
--localstatedir=/var \
--datadir=/usr/share/squid \
--sharedstatedir=/var/lib/squid \ **
--libdir=/usr/lib \ **
--includedir=/usr/include \ **
--infodir=/usr/share/info \ **
--mandir=/usr/share/man \ **
--enable-storeio="aufs,ufs,diskd,coss,null" \
--enable-removal-policies="heap lru" \
--enable-icmp \
--enable-delay-pools \
--enable-snmp \
--enable-arp-acl \
--enable-htcp \
--enable-cache-digests \
--enable-default-err-language="Portuguese" \
--enable-linux-netfilter \
--enable-poll \
--enable-carp \
--enable-x-accelerator-vary \
--with-pthreads \
--with-large-files \
--with-aio \
 
--enable-dependency-tracking \ **
--enable-cachemgr-hostname=localhost \ **
--enable-forw-via-db \ **
--enable-http-violations \ **
--enable-truncate \ **
--enable-ntlm-fail-open \ **
--enable-stacktraces \ **
--with-dl \ **
--enable-large-cache-files \ **
 
--enable-async-io \ *
--enable-useragent-log \ *
--enable-referer-log \ *
--enable-ssl \ *
--enable-coss-aio-ops \ *
--enable-underscores \ *
--enable-auth=basic,digest,ntlm \ *
--enable-diskd \ *
--enable-tproxy \ *
--enable-follow-x-forwarded-for \ *
--enable-dlmalloc \ *
--with-maxfd=16384 *
```

----------


## lucianogf

cara...

não sei se o problema é nas configurações de compilação do squid, recompilei adicionando as opções que não tinha e continua o problema.

a não ser que alguma dessas opções esteja conflitando com o url_rewrite.

estas configurações de compilação chequei muito bem antes de usá-las.

----------


## lucianogf

fui testar pra valer as configurações para o avast e não deu muito certo não.

ele dá erro na hora da atualização.

----------


## arium

bem se você foi testar... é pq entao conseguiu sanar o problema certo?

----------


## lucianogf

> bem se você foi testar... é pq entao conseguiu sanar o problema certo?


não, o problema das mensagens do squid continuam.

fui testar pra ver se realmente estava eficiente, e para minha surpresa não estava funcionando.

----------


## arium

aqui funciona entao deve ser teu squi mesmo .. essas messagens nao acontecem no meu e o script funciona...

bem como o do window update os testes até agora estao 100%

to aguardando mais testes

tem mais hosts do windows update do que: 

au.windowsupdate.com 
e download.windowsupdate.com?

----------


## arium

2676 Arquivos metadados do download.windowsupdate.com

e

30 na segunda pasta .. soh que esses 30 arquivos totalizam, já 2,2GB !!

----------


## lucianogf

com o avast você chegou a fazer uma nova instalação dele pra testar as atualizações de programa e banco de dados?

----------


## arium

sim

----------


## arium

```
#!/usr/bin/perl
# Windows Update Caching - Squid Proxy - By Luiz Biazus
#Tenha a Dignidade de mater os créditos ;-) senão vc atesta sua incompetência =D
#PS: e de agradecer tbm!
 
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        print $fh "entrada: $url\n";
 
 
#WINDOWS UPDATE LOOP PRIMARIO
        if ($url =~ /^http:\/\/download.windowsupdate.com/) {
                @achar = split(/\//, $url);
                $arquivoachar = $achar[$#achar];
                $resultado = `/bin/ls /var/www/html/WINUP`;
                @array = split(/\n/, $resultado);
                $flag = 0;
                for $i (0 .. $#array){
                                if($array[$i] eq "$arquivoachar") {
                                       $flag = 1;
                                       $id=`/usr/bin/id`;
                                        print $fh "Windows Update Redirecionado de $url Para http://IP.IP.IP.IP/WINUP/$arquivoachar user $id\n";
                                        $url = "http://IP.IP.IP.IP/WINUP/$arquivoachar";
                                        print $fh "saida: $url\n";
                                        print "http://IP.IP.IP.IP/WINUP/$arquivoachar\n";
 
 
                                }
 
                         $i++;
              }
 
             if($flag == 0 ) {
                    exec("cd /ar/www/html/WINUP && umask 022 && /usr/bin/wget $url && /bin/chmod +r /var/www/html/WINUP/.$arquivochar");
                    print $fh "saida: arquivoachar $arquivoachar $url\n";
                    print "$url\n";
             }
 
        }
 
 
#WINDOWS UPDATE LOOP SECUNDARIO
 
         if ($url =~ /^http:\/\/au.download.windowsupdate.com/) {
                @achar = split(/\//, $url);
                $arquivoachar = $achar[$#achar];
                $resultado = `/bin/ls /var/www/html/WINUP2`;
                @array = split(/\n/, $resultado);
                $flag = 0;
                for $i (0 .. $#array){
                                if($array[$i] eq "$arquivoachar") {
                                       $flag = 1;
                                       $id=`/usr/bin/id`;
                                        print $fh "AU Windows Update Redirecionado de $url Para http://IP.IP.IP.IP/WINUP2/$arquivoachar user $id\n";
                                        $url = "http://IP.IP.IP.IP/WINUP2/$arquivoachar";
                                        print $fh "saida: $url\n";
                                        print "http://IP.IP.IP.IP/WINUP2/$arquivoachar\n";
 
 
                                }
 
                         $i++;
              }
 
             if($flag == 0 ) {
                    exec("cd /var/www/html/WINUP2 && umask 022 && /usr/bin/wget $url && /bin/chmod +r /var/www/html/WINUP2/.$arquivochar");
                    print $fh "AU saida: arquivoachar $arquivoachar $url\n";
                    print "$url\n";
             }
 
        }
 
     else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
}
```

 Modo de Usar(Windows Update Script For Dummies):

1- Criar um Alias no apache EX:



```
<VirtualHost *:80>
ServerAdmin [EMAIL="[email protected]"][email protected][/EMAIL]
AddHandler php-script   php .php
DocumentRoot /var/www/xxxx/
Alias /WINUP /var/www/html/WINUP
Alias /WINUP2 /var/www/html/WINUP2
</VirtualHost>
<Directory "/var/www/html/WINUP">
   AllowOverride All
   Allow from all
</Directory>
 
<Directory "/var/www/html/WINUP2">
   AllowOverride All
   Allow from all
</Directory>
```

 2 - Permiçoes e caralho a 4:



```
#continuando
mkdir /var/www/html/WINUP &&
mkdir /var/www/html/WINUP2 &&
 
#isso eh por causa do array entao coloque.... de preferencia não pergunte
echo > /var/www/html/WINUP/file &&
echo > /var/www/html/WINUP/file2 &&
echo > /var/www/html/WINUP2/file &&
echo > /var/www/html/WINUP2/file2 &&
 
chown proxy.proxy /var/www/html/WINUP -R &&
chown proxy.proxy /var/www/html/WINUP2 -R &&
chmod 755 /var/www/html/WINUP -R &&
chmod 755 /var/www/html/WINUP2 -R
```

 3- Trocar IP.IP.IP.IP pelo ip do seu servidor ;-) ou use localhost


4-Ser Feliz

PS: até começar a popular será comum voce ter alguns arquivos repetidos tipo:


```
weqwuyeiwq.cab?9812731 e 
weqwuyeiwq.cab?9812731.1 
weqwuyeiwq.cab?9812731.2 
weqwuyeiwq.cab?9812731.3
```

 mais eh soh no começo 
ae nada que um rm -rf *.1 nao resolva.... isso vai acontecer com a pasta /WINUP dos metadados

deixe o windows update no automatico
no inicio "pela pagina" ele irá dar alguns problemas de autalizaçao o que eh normal até ele acabar de dar os wgets e popular o cache.

deu pra bola

----------


## arium

com saidas tipo estas no arquivo de debug:



```
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/a/selfupdate/WSUS3/x86/Other/wsus3setup.cab?0808010201 Para http://IP.IP.IP.IP/WINUP/wsus3setup.cab?0808010201 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0808010201 Para http://IP.IP.IP.IP/WINUP/muredir.cab?0808010201 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0808010201 Para http://IP.IP.IP.IP/WINUP/muredir.cab?0808010201 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/a/selfupdate/WSUS3/x86/Other/musetup.cab?0808010202 Para http://IP.IP.IP.IP/WINUP/musetup.cab?0808010202 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/a/selfupdate/WSUS3/x86/Other/musetup.cab?0808010202 Para http://IP.IP.IP.IP/WINUP/musetup.cab?0808010202 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0808010203 Para http://IP.IP.IP.IP/WINUP/wuredir.cab?0808010203 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/redir/wuredir.cab?0808010203 Para http://IP.IP.IP.IP/WINUP/wuredir.cab?0808010203 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0808010204 Para http://IP.IP.IP.IP/WINUP/muredir.cab?0808010204 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0808010204 Para http://IP.IP.IP.IP/WINUP/muredir.cab?0808010204 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
```

 você é um cara feliz.

wireless:/var/www/html/WINUP2# ls -la | wc -l
47
wireless:/var/www/html/WINUP2# cd ../WINUP/
wireless:/var/www/html/WINUP# ls -la | wc -l
3538

WINUP2 fica com os arquivos grandões cabs e executaveis
WINUP fica com os metadados entre 9.9 , 18 e 25K + algumas frescurinhas

----------


## lucianogf

Parabéns arium.

Isso vai ajudar muito com relação as atualizações da microsoft.

Editei a resposta para formatação e em uma determinada parte o "echo" vinha antes do "mkdir".

Vamos ver quantas perguntas do tipo "como configura no mikrotik" virão pela frente.. heheeh

----------


## KALAMAT

Se precisar de um programador em php , to dentro, não tenho tempo mais pra que durmir!!!!
O tópico é realmente muito bom, sonho de qualquer provedor isso que você comecou, imagina youtube, downloads, etc.. ?
Conte comigo, conheco bastante de php, porem so nao posso ficar direto online, para trabalhar nisso, terei q fazer de madruga mesmo.
Abraços e vamos nessa!




> com saidas tipo estas no arquivo de debug:
> 
> 
> 
> ```
> Windows Update Redirecionado de http://download.windowsupdate.com/v7/windowsupdate/a/selfupdate/WSUS3/x86/Other/wsus3setup.cab?0808010201 Para http://IP.IP.IP.IP/WINUP/wsus3setup.cab?0808010201 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
> Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0808010201 Para http://IP.IP.IP.IP/WINUP/muredir.cab?0808010201 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
> Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/redir/muredir.cab?0808010201 Para http://IP.IP.IP.IP/WINUP/muredir.cab?0808010201 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
> Windows Update Redirecionado de http://download.windowsupdate.com/v7/microsoftupdate/a/selfupdate/WSUS3/x86/Other/musetup.cab?0808010202 Para http://IP.IP.IP.IP/WINUP/musetup.cab?0808010202 user uid=13(proxy) gid=13(proxy) grupos=13(proxy)
> ...

----------


## arium

obrigado por reconhecer a importância do projeto..

claro que gostaria de sua colaboraçao ... toda ela é bem vinda

me adicione no msn.. meu msn está disponivel no meu profile 


abraços

----------


## lucianogf

arium

você teve este tipo de erro no error.log do apache?


```
[Sun Aug 03 15:29:54 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wuredir.cab
[Sun Aug 03 15:30:12 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 15:36:18 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 15:44:56 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 15:50:15 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 16:37:41 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 16:48:52 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 17:01:48 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 17:13:16 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
[Sun Aug 03 17:44:46 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/wsus3setup.cab
```

----------


## arium

seu winup está setado para /var/www/html/WINUP ou /var/www/WINUP?

verificou se dentro da pasta existe o arquivo:

wsus3setup.cab

abraços

----------


## galahad

Muito bem!  :Smile: 

É muito bom ver que o projeto andou e está prosperando. Infelizmente eu continuo mais do que atolado com trabalho e faculdade. Recebi uma "promoção" que só me aumentou a responsabilidade e o volume de trabalho, infelizmente ainda não tive contrapartida.  :Frown: 

Arium, você fez com o Perl o que eu iria fazer, ralar pra aprender. Quanto aos outros itens, eu programo em PHP e posso tentar ajudar, mas não tenho como me comprometer por enquanto.  :Frown: 

Abraço,

----------


## lucianogf

> seu winup está setado para /var/www/html/WINUP ou /var/www/WINUP?
> 
> verificou se dentro da pasta existe o arquivo:
> 
> wsus3setup.cab
> 
> abraços


sim, o caminho está correto.

e no diretório tem 161 arquivos wsus3setup.cab.. hehehe

no seu error.log do apache não aparece nada?

----------


## arium

epa epa epa...

primeiro analisei meu error.log esta limpo!!!

segundo:
nao pode ter mais que 1 arquivo no /WINUP igual!!!

obvio que xxx?x é diferente de xxx?y

mais se tiver 
xxx?x.1
xxx.?x2
xxx.?x161

é sinal de que ele não tá achando o arquivo lah dentro e tah dando wget o tempo todo
se for isso

checa path e permissoes! tem que ter R pra todos dah um chmod 755 -R nos WINUP

----------


## lucianogf

sim, não são todos os arquivos iguais, o path está correto e as permissões também.

----------


## arium

mais nao pode ser nenhum igual!!!

experimenta colocar o ipreal do teu server soh pra testar.

----------


## lucianogf

sim, eu disse que tinha vários iguais, mas só o começo, pois depois vem o "?16854651"

ele está dando esse erro porque nunca encontra somente "wsus3setup.cab", o arquivo sozinho não existe.

agora é preciso ver se ele está pegando esses arquivos que estão no WINUP ou se toda vez ele está baixando.

esse erro ocorre para todo arquivo do diretório WINUP.

----------


## lucianogf

é.. pelo que vi aqui ele está baixando o mesmo arquivo várias vezes, já que não encontra no diretório, mas sempre atribuindo nome diferente.



```
# ls wsus3setup.cab\?080*
wsus3setup.cab?0807201605  wsus3setup.cab?0808012234  wsus3setup.cab?0808021925  wsus3setup.cab?0808031708  wsus3setup.cab?0808041605
wsus3setup.cab?0807202106  wsus3setup.cab?0808012247  wsus3setup.cab?0808021935  wsus3setup.cab?0808031812  wsus3setup.cab?0808041606
wsus3setup.cab?0807210206  wsus3setup.cab?0808012323  wsus3setup.cab?0808021936  wsus3setup.cab?0808031850  wsus3setup.cab?0808041630
wsus3setup.cab?0807210716  wsus3setup.cab?0808012334  wsus3setup.cab?0808022032  wsus3setup.cab?0808031929  wsus3setup.cab?0808041636
wsus3setup.cab?0807211217  wsus3setup.cab?0808012343  wsus3setup.cab?0808022051  wsus3setup.cab?0808031930  wsus3setup.cab?0808041639
wsus3setup.cab?0807211717  wsus3setup.cab?0808012344  wsus3setup.cab?0808022135  wsus3setup.cab?0808031936  wsus3setup.cab?0808041641
wsus3setup.cab?0808011043  wsus3setup.cab?0808020011  wsus3setup.cab?0808022136  wsus3setup.cab?0808031944  wsus3setup.cab?0808041643
wsus3setup.cab?0808011156  wsus3setup.cab?0808020152  wsus3setup.cab?0808022204  wsus3setup.cab?0808032037  wsus3setup.cab?0808041737
wsus3setup.cab?0808011214  wsus3setup.cab?0808020211  wsus3setup.cab?0808022252  wsus3setup.cab?0808032045  wsus3setup.cab?0808041742
wsus3setup.cab?0808011221  wsus3setup.cab?0808020257  wsus3setup.cab?0808022253  wsus3setup.cab?0808032048  wsus3setup.cab?0808041806
wsus3setup.cab?0808011229  wsus3setup.cab?0808020434  wsus3setup.cab?0808022329  wsus3setup.cab?0808032101  wsus3setup.cab?0808041832
wsus3setup.cab?0808011333  wsus3setup.cab?0808020540  wsus3setup.cab?0808022334  wsus3setup.cab?0808032112  wsus3setup.cab?0808041917
wsus3setup.cab?0808011354  wsus3setup.cab?0808020935  wsus3setup.cab?0808022340  wsus3setup.cab?0808032139  wsus3setup.cab?0808041930
wsus3setup.cab?0808011411  wsus3setup.cab?0808021134  wsus3setup.cab?0808022345  wsus3setup.cab?0808032144  wsus3setup.cab?0808041940
```

 
ele deveria ficar somente com o nome wsus3setup.cab pra dar certo.

----------


## lucianogf

não dá pra saber o conteúdo do arquivo pq é binário, mas dos 191 arquivos wsus3setup.cab, 181 são iguais com 25384b e 10 iguais com 21833b.

sem contar que também tem os arquivos repetidos:
wusetup.cab
wuredir.cab
muredir.cab

apaguei todos os repetidos e deixei um de cada, mas com o nome só até o .cab, vamu vê no que dá.

----------


## arium

pode ser parametro do apache ele pode tah tetnando reconhecer o ? como uma variavel

no meu winup tem o arquivo tbm:

wireless:/var/www/html/WINUP# ls wsus3setup.cab
wsus3setup.cab


e olha que legal:

IE6.0sp1-KB833989-x86-PTB_fc5dc063b740003aa2d8e62409a1462.exe
IE6.0sp1-KB916281-Windows-98-ME-x86-PTB_b2f5d9b26bd1631027ba435174c6690.exe
IE6.0sp1-KB918439-Windows-98-ME-x86-PTB_627626ea6389bcb1ee4ceae34eaa3f7.exe
IE-KB891781-Windows-98-ME-x86-PTB_0c5271060f0da65bb5ce16d8fc6a15a.exe
IELPKAD_9EB06D710EE510947F89A83606B9E01F93A9F4AB.CAB
ieuics_419D4A50CAF06025C50E4BDF17819DF83F9D2F02.EXE
ieuida_6B9620A05CB1E2DB5F3C33D9EFE0DE1732700E94.EXE
ieuies_805A858549C7FD1DD7CDF74220C1056CA0DB544F.EXE
ieuifi_BFC4C08D8BEE7FACD56A8817825FAC3BF3C79947.EXE
ieuifr_B79C6D4192031BC831636CAD3AE22233AE948B43.EXE
ieuiit_4EC7E11064615D0E456C6F4A4251F17E1E16696D.EXE
ieuinl_20D9D6ABDC77EEFA1FD6B169B9975D2047A88C8D.EXE
ieuino_36368C184FD3A0E73852B30EC2084276CD9D5EA5.EXE
ieuipt_A2F82E58A7159A9498E03D0E86D61EE2A0182062.EXE
ieuisv_E5E0E64BBBB40CF80D4BB2E994FA7BDC1E15166F.EXE
MAILNEWS_6357E0DBD784BEE150333E05860DC2E0B604B66E.CAB


começou a popular com arquivod que nsao sao metadados tbm..
to achando que esses são do windows 98 caem todos no /winup  :Smile:

----------


## lucianogf

no seu só criou um arquivo wsus3setup.cab?

----------


## lucianogf

bom.. o windows update não está funcionando aqui.

fiz uma instalação nova do windows no vmware e instalei somente o sp2, quando ativo pra baixar as atualizações aparece isso no log do squid:


```
1217915274.858    541 10.0.0.3 TCP_MISS/200 417 HEAD http://download.windowsupdate.com/msdownload/update/v5/redir/wuredir.cab?0808050547 - DIRECT/189.11.250.25 application/octet-stream
1217915275.410    472 10.0.0.3 TCP_MISS/200 419 HEAD http://www.update.microsoft.com/v7/windowsupdate/SelfUpdate/wuident.cab?0808050547 - DIRECT/65.55.192.126 application/octet-stream
1217915276.150    729 10.0.0.3 TCP_MISS/200 419 HEAD http://download.windowsupdate.com/v7/windowsupdate/a/SelfUpdate/AU/x86/XP/ptBR/wusetup.cab?0808050547 - DIRECT/189.11.250.25 application/octet-stream
1217915276.169     15 10.0.0.3 TCP_MISS/200 24697 GET http://127.0.0.1/WINUP/wusetup.cab?0808050547 - DIRECT/127.0.0.1 application/x-cab
1217915281.663     36 10.0.0.3 TCP_MISS/404 305 HEAD http://127.0.0.1/WINUP/cdm.cab?0808050547 - DIRECT/127.0.0.1 text/html
1217915281.699     33 10.0.0.3 TCP_MISS/404 629 GET http://127.0.0.1/WINUP/cdm.cab?0808050547 - DIRECT/127.0.0.1 text/html
1217915281.791     31 10.0.0.3 TCP_NEGATIVE_HIT/404 324 HEAD http://127.0.0.1/WINUP/cdm.cab?0808050547 - NONE/- text/html
1217915281.824     30 10.0.0.3 TCP_NEGATIVE_HIT/404 324 GET http://127.0.0.1/WINUP/cdm.cab?0808050547 - NONE/- text/html
```

 
no access.log do apache:


```
127.0.0.1 - - [05/Aug/2008:01:48:01 -0400] "HEAD /WINUP/cdm.cab?0808050547 HTTP/1.0" 404 - "-" "Industry Update Control"
127.0.0.1 - - [05/Aug/2008:01:48:01 -0400] "GET /WINUP/cdm.cab?0808050547 HTTP/1.0" 404 303 "-" "Industry Update Control"
```

 error.log apache:


```
[Tue Aug 05 01:48:01 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/cdm.cab
[Tue Aug 05 01:48:01 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/cdm.cab
```

----------


## tianguapontocom

cabra, instalei o trem do squid 3 por aki.
configurei pra rodar o script em perl.
porem ta incrementando o seguinte 3 kg de erro no cache.log


```
2008/08/05 08:32:31| helperHandleRead: unexpected reply on channel 0 from redirector #1 ''
2008/08/05 08:32:31| helperHandleRead: unexpected reply on channel 0 from redirector #3 ''
2008/08/05 08:32:31| helperHandleRead: unexpected reply on channel 0 from redirector #4 ''
2008/08/05 08:32:31| helperHandleRead: unexpected reply on channel 0 from redirector #5 ''
```

 ja no windows update n ta baixando nenhum arquivo pra pasta WINUP e WINUP2
nao tem erros no access.log do apache nem no erro_access.log

alguma dica?

----------


## arium

> no seu só criou um arquivo wsus3setup.cab?



wireless:/var/www/html/WINUP# ls -la wsus3setup.cab
-rwxr-xr-x 1 proxy proxy 25384 2007-07-31 04:07 wsus3setup.cab
wireless:/var/www/html/WINUP# ls -la wsus3setup.cab?
ls: wsus3setup.cab?: Arquivo ou diretÃ³rio nÃ£o encontrado


não

só um sem o ?

e milhares:
wsus3setup.cab?dashuih3278912xzav

----------


## arium

o log do squid deve ser ignorado ele não importa mais na realidade criamos um subcache! 
mais pela logica ele teria que estar recebendo o endereço real da url... o url_rewriter trabalharia isso separadamente
eu nao gravo o access aqui pa é gigantesco.. mais nao me recordo de em nenhuma vez ele ter
mostrado algum redirecionamento.. para ele sempre foi transparente.


no access.log do apache:


```
127.0.0.1 - - [05/Aug/2008:01:48:01 -0400] "HEAD /WINUP/cdm.cab?0808050547 HTTP/1.0" 404 - "-" "Industry Update Control"
127.0.0.1 - - [05/Aug/2008:01:48:01 -0400] "GET /WINUP/cdm.cab?0808050547 HTTP/1.0" 404 303 "-" "Industry Update Control"
```

 
não gravo access.log do apache irei habilitalo para ver como procede 


error.log apache:


```
[Tue Aug 05 01:48:01 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/cdm.cab
[Tue Aug 05 01:48:01 2008] [error] [client 127.0.0.1] File does not exist: /var/www/WINUP/cdm.cab
```

 
como já falei meu error está perfeito

creio que voce deveria analisar padrão de codificação do seu apache derrepente..
experimente ver duas coisas uma se ele esta atribuindo "?dhasiuhduia" á uma variavel

por exemplo index.php?get=xupa
wuredir.cab?0808050547 

entao entra via browser http na pasta e tenta baixar com um click!
os arquivos problemáticos.

e posta ai

[/quote]

----------


## arium

> cabra, instalei o trem do squid 3 por aki.
> configurei pra rodar o script em perl.
> porem ta incrementando o seguinte 3 kg de erro no cache.log
> 
> 
> ```
> 2008/08/05 08:32:31| helperHandleRead: unexpected reply on channel 0 from redirector #1 ''
> 2008/08/05 08:32:31| helperHandleRead: unexpected reply on channel 0 from redirector #3 ''
> 2008/08/05 08:32:31| helperHandleRead: unexpected reply on channel 0 from redirector #4 ''
> ...


cola o teu progrma de redirecionamento aqui

e tambem dah um ls -la

dentro da pasta que contem o WINUP e o WINUP2

depois entra em WINUP E WINUP2 e cola aqui um ls -la de ambos

----------


## tianguapontocom

segue o solicitado hehehe:


```
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        $metodo = $X[3];
        print $fh "entrada: $url\n";
        #ORKUT
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        #AVIRA
        if ($url =~ /^http:\/\/dl[1-9]\.avgate\.net.*/) {
               $url =~ s/dl[0-9]/dl7/;
               print $fh "saida: $url\n";
               print "$url\n";
         }
        #AVAST
        if ($url =~ /^http:\/\/download[0-9]{3}.avast.com/) {
                $url =~ s/download[0-9]{3}/download626/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        #AVG
        if ($url =~ /^http:\/\/akamai.avg.com/) {
                $url =~ s/akamai/downloadfree/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        if ($url =~ /^http:\/\/update.avg.com/) {
                $url =~ s/update/guru/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        if ($url =~ /^http:\/\/download.windowsupdate.com/) {
                @achar = split(/\//, $url);
                $arquivoachar = $achar[$#achar];
                $resultado = `/bin/ls /var/www/html/WINUP`;
                @array = split(/\n/, $resultado);
                $flag = 0;
                for $i (0 .. $#array){
                                if($array[$i] eq "$arquivoachar") {
                                       $flag = 1;
                                       $id=`/usr/bin/id`;
                                        print $fh "Windows Update
Redirecionado de $url Para [URL]http://189.23.53.194/WINUP/$arquivoachar[/URL] user $id\n";
                                        $url =
"[URL]http://189.23.53.194/WINUP/$arquivoachar[/URL]";
                                        print $fh "saida: $url\n";
                                        print
                                        "[URL]http://189.23.53.194/WINUP/$arquivoachar\n[/URL]";
 
                                }
                         $i++;
              }
             if($flag == 0 ) {
                    exec("cd /var/www/htdocs/WINUP && umask 022 &&
/usr/bin/wget $url && /bin/chmod +r /var/www/htdocs/WINUP/.$arquivochar");
                    print $fh "saida: arquivoachar $arquivoachar $url\n";
                    print "$url\n";
             }
        }
         if ($url =~ /^http:\/\/au.download.windowsupdate.com/) {
                @achar = split(/\//, $url);
                $arquivoachar = $achar[$#achar];
                $resultado = `/bin/ls /var/www/html/WINUP2`;
                @array = split(/\n/, $resultado);
                $flag = 0;
                for $i (0 .. $#array){
                                if($array[$i] eq "$arquivoachar") {
                                       $flag = 1;
                                       $id=`/usr/bin/id`;
                                        print $fh "AU Windows Update
Redirecionado de $url Para [URL]http://189.23.53.194/WINUP2/$arquivoachar[/URL] user
$id\n";
                                        $url =
"[URL]http://189.23.53.194/WINUP2/$arquivoachar[/URL]";
                                        print $fh "saida: $url\n";
                                        print
                                        "[URL]http://189.23.53.194/WINUP2/$arquivoachar\n[/URL]";
 
                                }
                         $i++;
              }
             if($flag == 0 ) {
                    exec("cd /var/www/htdocs/WINUP2 && umask 022 &&
/usr/bin/wget $url && /bin/chmod +r /var/www/htdocs/WINUP2/.$arquivochar");
                    print $fh "AU saida: arquivoachar $arquivoachar $url\n";
                    print "$url\n";
             }
        }
 
            else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
```

 ls -la WINUP
[code]

----------


## tianguapontocom

segue o solicitado hehehe:


```
$|=1;
while (<>) {
        open $fh, ">>/tmp/debug_url_redirect.log";
        @X = split;
        $url = $X[0];
        $metodo = $X[3];
        print $fh "entrada: $url\n";
        #ORKUT
        if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
                $url =~ s/img[0-9]/img1/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        #AVIRA
        if ($url =~ /^http:\/\/dl[1-9]\.avgate\.net.*/) {
               $url =~ s/dl[0-9]/dl7/;
               print $fh "saida: $url\n";
               print "$url\n";
         }
        #AVAST
        if ($url =~ /^http:\/\/download[0-9]{3}.avast.com/) {
                $url =~ s/download[0-9]{3}/download626/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        #AVG
        if ($url =~ /^http:\/\/akamai.avg.com/) {
                $url =~ s/akamai/downloadfree/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        if ($url =~ /^http:\/\/update.avg.com/) {
                $url =~ s/update/guru/;
                print $fh "saida: $url\n";
                print "$url\n";
        }
        if ($url =~ /^http:\/\/download.windowsupdate.com/) {
                @achar = split(/\//, $url);
                $arquivoachar = $achar[$#achar];
                $resultado = `/bin/ls /var/www/html/WINUP`;
                @array = split(/\n/, $resultado);
                $flag = 0;
                for $i (0 .. $#array){
                                if($array[$i] eq "$arquivoachar") {
                                       $flag = 1;
                                       $id=`/usr/bin/id`;
                                        print $fh "Windows Update
Redirecionado de $url Para [URL]http://189.23.53.194/WINUP/$arquivoachar[/URL] user $id\n";
                                        $url =
"[URL]http://189.23.53.194/WINUP/$arquivoachar[/URL]";
                                        print $fh "saida: $url\n";
                                        print
                                        "[URL]http://189.23.53.194/WINUP/$arquivoachar\n[/URL]";
 
                                }
                         $i++;
              }
             if($flag == 0 ) {
                    exec("cd /var/www/htdocs/WINUP && umask 022 &&
/usr/bin/wget $url && /bin/chmod +r /var/www/htdocs/WINUP/.$arquivochar");
                    print $fh "saida: arquivoachar $arquivoachar $url\n";
                    print "$url\n";
             }
        }
         if ($url =~ /^http:\/\/au.download.windowsupdate.com/) {
                @achar = split(/\//, $url);
                $arquivoachar = $achar[$#achar];
                $resultado = `/bin/ls /var/www/html/WINUP2`;
                @array = split(/\n/, $resultado);
                $flag = 0;
                for $i (0 .. $#array){
                                if($array[$i] eq "$arquivoachar") {
                                       $flag = 1;
                                       $id=`/usr/bin/id`;
                                        print $fh "AU Windows Update
Redirecionado de $url Para [URL]http://189.23.53.194/WINUP2/$arquivoachar[/URL] user
$id\n";
                                        $url =
"[URL]http://189.23.53.194/WINUP2/$arquivoachar[/URL]";
                                        print $fh "saida: $url\n";
                                        print
                                        "[URL]http://189.23.53.194/WINUP2/$arquivoachar\n[/URL]";
 
                                }
                         $i++;
              }
             if($flag == 0 ) {
                    exec("cd /var/www/htdocs/WINUP2 && umask 022 &&
/usr/bin/wget $url && /bin/chmod +r /var/www/htdocs/WINUP2/.$arquivochar");
                    print $fh "AU saida: arquivoachar $arquivoachar $url\n";
                    print "$url\n";
             }
        }
 
            else {
                print $fh "nao redirecionado\n";
                print "\n";
        }
        close $fh;
```

 ls -la WINUP


```
[email protected]:/etc/squid# ls -ls /var/www/htdocs/WINUP
total 8
4 -rwxr-xr-x 1 squid squid 1 2008-08-05 08:06 file*
4 -rwxr-xr-x 1 squid squid 1 2008-08-05 08:06 file2*
[email protected]:/etc/squid#
```

 
ls -la WINUP2


```
[email protected]:/etc/squid# ls -ls /var/www/htdocs/WINUP2
total 8
4 -rwxr-xr-x 1 squid squid 1 2008-08-05 08:06 file*
4 -rwxr-xr-x 1 squid squid 1 2008-08-05 08:06 file2*
```

 
Você pode mostrar aqui seus parametros do squid?

----------


## arium

> segue o solicitado hehehe:
> 
> 
> ```
> $|=1;
> while (<>) {
>         open $fh, ">>/tmp/debug_url_redirect.log";
>         @X = split;
>         $url = $X[0];
> ...



voce está usando $resultado = `/bin/ls /var/www/html/WINUP`;

e os redirecionamentos vao para /var/www/htdocs/WINUP

----------


## tianguapontocom

corrigido, porem o erro continua

----------


## galahad

Luciano,

Por acaso você tem PHP instalado nesse seu servidor WEB? Se tiver, o PHP considera o "?" como delimitador de linha e tudo que aparece depois dele passa a ser tratado como variável e não como nome de arquivo. 

Uma forma de resolver isso é, seguindo a RFC 2396, é fazer o encode do "?" e passar o nome do arquivo como "blah.cab%3F01923" ao invés de "blah.cab?01923".

Até!

----------


## lucianogf

arium,

consigo baixar normalmente o arquivo do apache pelo navegador.

galahad,

sim, tenho php instalado nessa máquina, uso para outros serviços. Não tenho a minima idéia de como fazer isso que você tá falando do php. 

acredito que deve existir alguma forma de desabilitar o php para estes aliases.

----------


## lucianogf

o negócio seria fazer assim, quando o windows faz uma requisição, sempre o final da url será um numero, e sempre diferente http://....../wsus3setup.cab?080805XXXX, o script deveria checar se o arquivo "wsus3setup.cab" existe no diretório, se existir ele manda para o cliente adicionando o numero da url, assim não ficaria baixando sempre o mesmo aquivo.

----------


## alexandrecorrea

é so mudar os *cache deny* .. algo do tipo *cache allow windowsupdate.microsoft.com*

----------


## lucianogf

> é so mudar os *cache deny* .. algo do tipo *cache allow windowsupdate.microsoft.com*


aqui não tenho mais a acl QUERY, nem o cache deny.

----------


## alexandrecorrea

eh so criar uma para o windowsupdate :P

----------


## lucianogf

> eh so criar uma para o windowsupdate :P


não vai adiantar nada criar o "cache allow acl", pois por padrão ele já é allow quando não tem o deny.

----------


## tianguapontocom

era bom ver se tem algo mais pra esse script perl, pq ate onde vi ele so lista o que tem e baixa o solicitado. n vi nada na pesquisa que retirasse o ? dos arquivos e jogasse o mesmo.
Sera se o desenvolvedor do script pode postar o de seu uso aki no topico?
se puder e uma boa, se n puder veremos o que fazer.
porque da forma que esta não funciona corretamente

----------


## arium

o que aparece quando vc acessa http://oteuipvalido/WINUP e http://oteuipvalido/WINUP2?

----------


## arium

luciano eh melhor conversarmos via msn!

----------


## arium

quanto acl windowsupdate allow NAO FUNCIONA

primeiro pq trabalha com metadados segundo pe tem arquivos de mais de 700mb

vc seta max file size desse tamanho?!

----------


## arium

> era bom ver se tem algo mais pra esse script perl, pq ate onde vi ele so lista o que tem e baixa o solicitado. n vi nada na pesquisa que retirasse o ? dos arquivos e jogasse o mesmo.
> Sera se o desenvolvedor do script pode postar o de seu uso aki no topico?
> se puder e uma boa, se n puder veremos o que fazer.
> porque da forma que esta não funciona corretamente



se voce nao tem capacidade de fazer funcinar .. difere de ele não funcionar

segundo não tenho obrigação nenhuma em ajudar a comunidade to fazendo isso de boa

terceiro ESSA DROGA SÃO METADADOS! vai ter 10mil desses na pasta /WINUP 

esse tem que ser passado porque é do metadado

como o galahad falou é questao ai eh apache e php


terceiro ESQUEÇA o access.log 
o que vale agora eh o /tmp/debugblablabla

----------


## tianguapontocom

O legal colega ariun e que vc vem falar de CAPACIDADE e não sabe nada de programação.
Se n fosse o programador em Perl vc tava mais do q ferrado. lembre-se q vc entrou aqui sem saber da nada somente com idéias,, idéias ate boas.
Agora se n quer ajudar o povo do fórum avisa pra ninguém perder tempo.
Nunca diga q ninguém não tem CAPACIDADE pra fazer algo, pq vc n sabe o que tem por traz desse fórum muito menos dos profissionais existentes por aqui.
Acredito que isso hoje só esta acontecendo "questão de cache full" graças a minha ajuda, a do Roney e do Luciano que perdemos noites e noites de sonos pra fazer essa droga funcionar, pra por o ZPH pra funcionar como deveria.
Abrimos as portas para o cache, foi dai que abrimos horizontes pro povo fazer o mesmo em mikrotik.
Agora ninguém aqui foi ganancioso hipócrita e muito menos ocultamos algo de ninguém.
Sempre que perguntarão foram respondidos devidamente como manda o figurino e resolvidos.
Quero te lembrar também da responsabilidade de se abrir um tópico, no mesmo vc tem que presta esclarecimentos e se não tiver como dar esclarecimentos avisar se não pretende fazer isso basta trancar o tópico e ficar com isso só pra vc.

Sem mais... Continue com seu projeto ou não, vc não e único e o que vc fez podemos fazer.

----------


## lucianogf

> luciano eh melhor conversarmos via msn!


cara, vamos tentar resolver aqui pelo fórum, assim, qualquer novidade fica disponível para outras pessoas que também possam ter problemas, abaixo estão todas as configurações que estou usando atualmente, no squid, relacionadas ao windows update.

store_url_rewrite.pl


```
#!/usr/bin/perl
#X[0]-> URL EX: IMG1.ORKUT.COM
#X[1]-> CLIENT IP: 127.0.0.13/ANGEL.GINET.COM.BR
#X[2]-> -
#X[3]-> GET ou POST
#X[4]-> -
#X[5]-> MYIP : 127.0.0.1 OU 127.0.0.1
#X[6]-> MYPORT EX: 8012 au.download.windowsupdate.com
$|=1;
while (<>) {
   open $fh, ">>/tmp/debug_url_redirect.log";
   @X = split;
   $url = $X[0];
   $metodo = $X[3];
   print $fh "entrada: $url\n";
   #ORKUT
   if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
      $url =~ s/img[0-9]/img1/;
      print $fh "saida: $url\n";
      print "$url\n";
   }
   #AVIRA
   if ($url =~ /^http:\/\/dl[1-9]\.avgate\.net.*/) {
      $url =~ s/dl[0-9]/dl7/;
      print $fh "saida: $url\n";
      print "$url\n";
   }
   #AVAST
   if ($url =~ /^http:\/\/download[0-9]{3}.avast.com/) {
      $url =~ s/download[0-9]{3}/download626/;
      print $fh "saida: $url\n";
      print "$url\n";
   }
   if ($url =~ /^http:\/\/download[0-9]{2}.avast.com/) {
      $url =~ s/download[0-9]{2}/download626/;
      print $fh "saida: $url\n";
      print "$url\n";
   }
   #AVG
   if ($url =~ /^http:\/\/akamai.avg.com/) {
      $url =~ s/akamai/downloadfree/;
      print $fh "saida: $url\n";
      print "$url\n";
   }
   if ($url =~ /^http:\/\/update.avg.com/) {
      $url =~ s/update/guru/;
      print $fh "saida: $url\n";
      print "$url\n";
   }
 
#WINDOWS UPDATE LOOP PRIMARIO
   if ($url =~ /^http:\/\/download.windowsupdate.com/) {
      @achar = split(/\//, $url);
      $arquivoachar = $achar[$#achar];
      $resultado = `/bin/ls /var/www/WINUP`;
      @array = split(/\n/, $resultado);
      $flag = 0;
      for $i (0 .. $#array){
         if($array[$i] eq "$arquivoachar") {
            $flag = 1;
            $id=`/usr/bin/id`;
            print $fh "Windows Update Redirecionado de $url Para http://127.0.0.1/WINUP/$arquivoachar user $id\n";
            $url = "http://127.0.0.1/WINUP/$arquivoachar";
            print $fh "saida: $url\n";
            print "http://127.0.0.1/WINUP/$arquivoachar\n";
         }
   $i++;
      }
 
         if($flag == 0 ) {
            exec("cd /var/www/WINUP && umask 022 && /usr/bin/wget $url && /bin/chmod +r /var/www/WINUP/.$arquivochar");
            print $fh "saida: arquivoachar $arquivoachar $url\n";
            print "$url\n";
         }
   }
 
#WINDOWS UPDATE LOOP SECUNDARIO
 
   if ($url =~ /^http:\/\/au.download.windowsupdate.com/) {
      @achar = split(/\//, $url);
      $arquivoachar = $achar[$#achar];
      $resultado = `/bin/ls /var/www/WINUP2`;
      @array = split(/\n/, $resultado);
      $flag = 0;
      for $i (0 .. $#array){
         if($array[$i] eq "$arquivoachar") {
            $flag = 1;
            $id=`/usr/bin/id`;
            print $fh "AU Windows Update Redirecionado de $url Para http://127.0.0.1/WINUP2/$arquivoachar user $id\n";
            $url = "http://127.0.0.1/WINUP2/$arquivoachar";
            print $fh "saida: $url\n";
            print "http://127.0.0.1/WINUP2/$arquivoachar\n";
         }
      $i++;
      }
 
      if($flag == 0 ) {
         exec("cd /var/www/WINUP2 && umask 022 && /usr/bin/wget $url && /bin/chmod +r /var/www/WINUP2/.$arquivochar");
         print $fh "AU saida: arquivoachar $arquivoachar $url\n";
         print "$url\n";
      }
   }
 
   else {
      print $fh "nao redirecionado\n";
      print "\n";
   }
   close $fh;
}
```

 
o caminho dos diretórios WINUP e WINUP2 estão corretos e com suas devidas permissões.

refresh_pattern - squid.conf


```
refresh_pattern windowsupdate.com/.*\.(cab|exe|dll|msi|psf)               10080  100%  43200  reload-into-ims
refresh_pattern download.microsoft.com/.*\.(cab|exe|dll|msi|psf)          10080  100%  43200  reload-into-ims
refresh_pattern www.microsoft.com/.*\.(cab|exe|dll|msi|psf)               10080  100%  43200  reload-into-ims
refresh_pattern au.download.windowsupdate.com/.*\.(cab|exe|dll|msi|psf)    4320  100%  43200  reload-into-ims
```

 
parametros do url_rewrite - squid.conf


```
storeurl_rewrite_children 70
acl store_rewrite_list dstdomain "/etc/squid/sur_dominios.txt"
url_rewrite_access allow store_rewrite_list
url_rewrite_access deny all
url_rewrite_program /etc/squid/store_url_rewrite.pl
```

 
/etc/squid/sur_dominios.txt


```
.orkut.com
.avast.com
akamai.avg.com
update.avg.com
.avgate.com
au.download.windowsupdate.com
download.windowsupdate.com
.update.microsoft.com
```

 
Ontem quando estava fazendo uns testes, percebi que mesmo tirando os dominios do update do windows do sur_dominios.txt, chegou um determinado momento que o windows parou de baixar as atualizações.

Para os testes, fiz uma instalação nova do windows no vmware e instalei apenas o SP2, depois deixei que ele atualizasse direto da internet, mas ele não baixou as atualizações.

Agora, não sei se também poderia ser alguma instabilidade no windowsupdate ou se era realmente algo no proxy.

----------


## lucianogf

> quanto acl windowsupdate allow NAO FUNCIONA
> 
> primeiro pq trabalha com metadados segundo pe tem arquivos de mais de 700mb
> 
> vc seta max file size desse tamanho?!



aqui já estava configurado para este valor, e faz tempo

maximum_object_size 800 MB

----------


## lucianogf

> se voce nao tem capacidade de fazer funcinar .. difere de ele não funcionar


cara, não estamos aqui para julgar a capacidade de ninguém, mesmo que alguém tenha capacidade limitada para este tópico pode ter capacidade sobrando para outra coisa que você não tenha a mínima idéia do que seja.




> segundo não tenho obrigação nenhuma em ajudar a comunidade to fazendo isso de boa


realmente, você não tem obrigação nenhuma em ajudar a comunidade, mas tenho certeza que você já foi ajudado por alguém aqui.




> terceiro ESSA DROGA SÃO METADADOS! vai ter 10mil desses na pasta /WINUP


pelo que vi, esses arquivos repetidos, wsus3setup.cab?XXXXXXX, são todos iguais, parece que ao fazer o download do arquivo, o próprio site da microsoft adiciona o numero no final como se fosse uma contagem dos downloads, é como comentei antes, se fizessemos um script que, quando houver a requisição de download, ele cheque se o arquivo existe no diretório, caso exista, manda ele para o cliente adicionando a numeração capturada na requisição do download.




> como o galahad falou é questao ai eh apache e php


mas então qual é esse parâmetro que deve ser mudado? temos que descobrir qual é e se dá para alterar apenas para os alias WINUP e WINUP2.





> terceiro ESQUEÇA o access.log 
> o que vale agora eh o /tmp/debugblablabla


o access.log ainda serve sim, pois quando o arquivo sai do WINUP ou WINUP2 aparece no access.log

----------


## arium

eu quero fazer alguns testes com vc.. vamos proceder via msn depois agente posta aqui oq era.
te bastante variante agente conversa melhor por lá

----------


## arium

outra coisa.. até hoje nunca dexei de respoder 1 pergunta só não suporto grosseria..

----------


## tianguapontocom

Não suporta grosseria é e grosso. Intitula-se o ultimo chimarrão do sul

----------


## arium

aqui é assim filho.. levanto a crista agente não abaixa a nossa tbm não... e não tenho mais o que falar com vssa senhoria.. vc utiliza-se de palavras de baixo calão tenho os log do msn quer que eu poste? alias nem vou postar nada.. como vc mesmo disse lá " tudo bem não gosto de ser ajudado muito menos ajudar aos outros" então deixa quem tá tentando fazer algo fazer e fecha-te.


PS: não irei mais responeder nada que vc poste pode xigar a vontade.. abraços e seja feliz

----------


## achiodi

Mas eh um baita dum chupim... nao fez nada, nao manja nada pelo visto, gosta de cantar de galo e ainda critica quem ta fazendo.

Tem pessoas que axam que devemos fazer tudo e entregar de mao beijada... ajudar alguem nao significa fazer e entregar pronto, e sim mostrar o caminho... Se vc eh tao bom como diz, vire-se, nao fique em forum ou pedindo ajuda no msn.


Ingratidao eh uma coisa horrivel... E a inveja eh pior ainda!
Voce ta com a razão Arium, deixe esse Boçal falando sozinho.

----------


## lucianogf

> eu quero fazer alguns testes com vc.. vamos proceder via msn depois agente posta aqui oq era.
> te bastante variante agente conversa melhor por lá


blz..

agora é só bater algum horário que você e eu estamos no msn.. hehehe

----------


## lucianogf

Pessoal, não há necessidades de ficarmos com essas "briguinhas", vamos parar com isso e agora!

Se algum usuário tem algo a dizer a outro e se o assunto não for relativo ao tópico que faça por mensagem privada, por msn, sinal de fumaça, celular, pager, código morse ou qualquer outra coisa, menos no tópico!!!

E se mesmo assim quiser postar aqui no tópico, muito cuidado com as palavras e tenha educação, quando você escrever algo imagine que outro usuário escreveu a mesma coisa a você, é bem provável que mudará várias palavras ou modo de dizer.

----------


## alexandrecorrea

esquece orkut.. ele eh 100% "cacheavel" :P nao tem misterio.. :P

----------


## arium

> blz..
> 
> agora é só bater algum horário que você e eu estamos no msn.. hehehe



agente se bica =p
horario nas nossas profissoes é meio complexo mais assim que tivermos a oportunidade o mais cedo possível faremos :P

----------


## arium

> esquece orkut.. ele eh 100% "cacheavel" :P nao tem misterio.. :P



eu sei kra ... hehe o url rewriter nesse caso é pra controle de duplicidade

temos a foto alexandre.jpg no im1.orkut.com img2.orkut.com img3.orkut.com imagem imgn.orkut.com o que fazermos nesse caso é trabalhar apenas com 1 host o img1.orkut.com

diminuindo a duplicidade
tornando o cache mais efetivo
ocupando menos espaço no hd 

=)

----------


## cleciorodrigo

Ae pessoal apesar de não sacar muito de squid, e com a ajudo do meu amigo Luiz (Arium) o meu esta rodando certinho aqui e notei um grande melhora de desempenho e link, a uns 3 meses estou testando squid, e tive a grande ajuda do Luiz na implentação de alguns itens, e como sempre o cara mando bem com mais esta ideia louca que funciona :-) , aqui esta dando certo, tanto orkut como Windows Update... em breve posto mais detalhes, apos os proximos teste, a maquina foi montada exclusivamente pra cache aqui no provedor e configurada do zero pra rodar os recursos do rewrite... e teve o toque final do Luiz...

Que funciona... funciona

Abraços

----------


## lucianogf

Não sei que tipo de testes fizeram.

Aqui fiz uma instalação nova do windows, no zero, instalei só o SP2.

Quando ativo, nas "Atualizações Automáticas, "Notificar-me de atualizações, mas não baixá-las ou instalá-las automaticamente", aparece o balão dizendo que existem atualizações a serem baixadas, porém, quando clico nele simplesmente some e não baixa nada.

O diretório WINUP, como disse no começo do tópico, contém um monte de arquivos INÚTEIS, completamente INÚTEIS, pois todas as vezes que é feita uma consulta das atualizações estes arquivos são baixados novamente mas com outra numeração, e são, na maioria dos casos, exatamente os mesmos, é só compará-los com o "diff" que verão.

No diretório WINUP2 tem vários arquivos grandes, mas pelo que estou vendo aqui, não está adiantando nada estes arquivos estarem lá, pois o windows não está os baixando.

vou instalar o office 2003 pra ter mais opções de atualizações.

----------


## arium

```
[SIZE=2]NameVirtualHost *:80[/SIZE]
[SIZE=2]<VirtualHost *:80>[/SIZE]
[SIZE=2]ServerAdmin [email protected][/SIZE]
[SIZE=2]AddHandler php-script php .php[/SIZE]
[SIZE=2]DocumentRoot /var/www/[/SIZE]
[SIZE=2]Alias /WINUP /var/www/html/WINUP[/SIZE]
[SIZE=2]Alias /WINUP2 /var/www/html/WINUP2[/SIZE]
 
 
[SIZE=2]<Directory />[/SIZE]
[SIZE=2]Options FollowSymLinks[/SIZE]
[SIZE=2]#isso de baixo cria um auto index mais é muito lento[/SIZE]
[SIZE=2]#Options Indexes FollowSymLinks MultiViews[/SIZE]
[SIZE=2]AllowOverride None[/SIZE]
[SIZE=2]Order deny,allow[/SIZE]
[SIZE=2]</Directory>[/SIZE]
[SIZE=2]<Directory /var/www/html/>[/SIZE]
[SIZE=2]Options Indexes FollowSymLinks MultiViews +ExecCGI[/SIZE]
[SIZE=2]AllowOverride None[/SIZE]
[SIZE=2]</Directory>[/SIZE]
[SIZE=2]<Directory "/var/www/html/WINUP">[/SIZE]
[SIZE=2]AllowOverride All[/SIZE]
[SIZE=2]Allow from all[/SIZE]
[SIZE=2]</Directory>[/SIZE]
[SIZE=2]<Directory "/var/www/html/WINUP2">[/SIZE]
[SIZE=2]AllowOverride All[/SIZE]
[SIZE=2]Allow from all[/SIZE]
[SIZE=2]</Directory>[/SIZE]
[SIZE=2]</VirtualHost>[/SIZE]
```

 

tanta usar isso...

de um echo > /tmp/debug_url_redirect.log
chmod 777 /tmp/debug_url_redirect.log
e CUIDA ESSE ARQUIVO ele vai dizer se tah funcionando ou não não o access.log ou o store.log

com 1 computador na rede eu jah te disse que vai demorar pra funcionar vc precisa de população.

se ele redireciona e mesmo assim nao baixa ...

simples pau no apache.

----------


## achiodi

Soh pra constar, o meu squid tambem esta rodando lindao com WINUP.
coisa linda de se ver!!

----------


## lucianogf

> ```
> [SIZE=2]NameVirtualHost *:80[/SIZE]
> [SIZE=2]<VirtualHost *:80>[/SIZE]
> [SIZE=2]ServerAdmin [email protected][/SIZE]
> [SIZE=2]AddHandler php-script php .php[/SIZE]
> [SIZE=2]DocumentRoot /var/www/[/SIZE]
> [SIZE=2]Alias /WINUP /var/www/html/WINUP[/SIZE]
> [SIZE=2]Alias /WINUP2 /var/www/html/WINUP2[/SIZE]
>  
> ...


se fosse pau no apache não abriria quando entra com o endereço no navegador.

o access.log mostra quando está pegando o arquivo do repositório local.

como perguntei antes e você não respondeu, já pegou uma maquina, fez a instalação do zero e mandou atualizar o windows pra ver?

você sempre fala que uma mãquina não vai funcionar, se não funcionar com uma não vai funcionar com 10.

----------


## GrayFox

Soh tah faltando as luvas de boxe nesse topico... haha

O ideal era pegar os principais posts, traduzir pra portugues e jogar no wiki...
Merecem os parabéns quem pesquisaram para a idéia funcionar.

Saudações,

----------


## lucianogf

eita pega.. gastei o zóio hoje pra mexer nesse trem...

parece que uma parte do negócio consegui fazer funcionar.

acessando os arquivos pelo endereço http://10.0.1.254/WINUP2, acessava sem problemas, mas o windows não baixava as atualizações nem ca gota.

peguei a url de um arquivo, no debug, que já havia sido baixado e tentei abrir no navegador, por teoria ele deveria redirecionar e baixar o arquivo do repositório, mass..... masssss.... masssssss..... deu erro! erro do squid, conexão recusada. 

analisei o tráfego com o tcpdump e vi que quando havia requisição da tel url, o IP 10.0.1.254 requisitava para ele mesmo na porta 80, porém, não havia regra no iptables que liberasse tal acesso.

foi só criar a regra liberando a entrada na porta 80 para este ip e beleza, aparentemente funcionou.

vou verificar mais depois para resolver outros problemas.

----------


## achiodi

olha que coisa linda!!!

1218685002.154 27 192.168.6.35 TCP_HIT/206 9409 GET http://201.2.213.16/WINUP2/excel_3ba...f774f5a036.cab - 


haUIHUhauHAUha

----------


## arium

luciano...
FUNCIONA FUNCUINA CAÇULETA
eu ajudei o andre eo clecio fico 100% o teu eu NAO POSSO PELNAMENTE ajudar pq vc tem o cacti e nao sei mais oq no teu apache

outra coisa vc usa porta 8080

outra coisa eu nao tive acesso ssh a tua maquina a dos outros tive...


outra coisa... com UMA MAQUINA FUNCIONA SÓ QUE DEMORA MAIS!!!!!!!!!!!!!

quando mais maquinas mais população



outra coisa use preferenciamente IP valido 

já perdi as conta de quantas vezes pedi pra vc tbm me cola o tmp do debug vc nao colou aqui...

só tem uma explicaçao pra isso teus cliente não tao achando o arquivo dentro da pasta!

se vc for no cliente e tentar baixar o arquivo ele baixa?

http://ipdoservodr/winup2/filedokct.exe


?


como eu já expliquei.. se voce tiver uma mauqina ele vai tentar baixar a primeira vez e pode ou nao conseguir.. mais ele vai dah um wget no arquivo.. se vc tentar denovo em SEQUENCIA o proxy vai te redirecionar para o arquivo (que muitas vezes não está completo pq o wget nao acabou) o que provoca erro... 

como a minha rede a rede do andre e a rede do clecio tem mais de 500 clientes... foi facil conseguir populaçao e o redirecionador funciona meio que de cara.

velho oq tenho pra te dize é funciona e tá provado que funciona temos pelomenos 3 proxys aqui em pleno funcionamento...

por primazia eu tentaria baixar o arquivo MANUALMENTE de um cliente de rede

se essa etapa passou ótimo teu apache tá ok!

outra coisa a se pensar! o cliente acessa porta 80 ou 8080? como funciona esses redirecionamentos!

derepente tu vai ter que criar um vhost na 8080 não sei
caso fizer isso tambem vai ter que adaptar o redirector


o ls /var/www/html/WINUP tá listando o dir? eh esse mesmo o dir! 
kra vai ter que ir pegando pedacinho por pedacinho do script e ir debugando!


como te falei e repido de preferecia por usar ip valido e porta 80
não que nao funcione de outro jeito... ateh pq pela logica funciona.. mais é mais facil assim!
foi dessa maneira q configurei o meu e ajudei o andre e o clecio.

----------


## lucianogf

> eita pega.. gastei o zóio hoje pra mexer nesse trem...
> 
> parece que uma parte do negócio consegui fazer funcionar.
> 
> acessando os arquivos pelo endereço http://10.0.1.254/WINUP2, acessava sem problemas, mas o windows não baixava as atualizações nem ca gota.
> 
> peguei a url de um arquivo, no debug, que já havia sido baixado e tentei abrir no navegador, por teoria ele deveria redirecionar e baixar o arquivo do repositório, mass..... masssss.... masssssss..... deu erro! erro do squid, conexão recusada. 
> 
> analisei o tráfego com o tcpdump e vi que quando havia requisição da tel url, o IP 10.0.1.254 requisitava para ele mesmo na porta 80, porém, não havia regra no iptables que liberasse tal acesso.
> ...


 .

----------


## cleciorodrigo

Bom acredito que esta venha ser a prova definitiva que esta funcionado, detalhe do log do debug


entrada: http://au.download.windowsupdate.com...1ba3fe1381.exe
AU Windows Update Redirecionado de http://au.download.windowsupdate.com...1ba3fe1381.exe Para http://200.205.205.3/WINUP2/windowsx...1ba3fe1381.exe user uid=13(proxy) gid=13(proxy) groups=13(proxy)
saida: http://200.205.205.3/WINUP2/windowsx...1ba3fe1381.exe

Hoje realmente coloquei o proxy em produção tenho 646 clientes saindo por ele, alem da melhora de desempenho, consegui uma economia no link que esta no vermelho a espera de um prometido upgrade pela Telefonica =), agora voltando ao topico, td indique que esta funcionado como no log acima, como mencionei este servidor foi montado exclusivamente pra proxy e pra testar as ideias do Professor Pardal (Luiz) =) e como sempre o cara mando bem.... 

Abraços a todos

----------


## lucianogf

Pessoal, 

criei um script para rodar paralelo ao store_url_rewrite (sur) que será da seguinte forma, quando há a requisição do arquivo, o sur envia o endereço para o script secundário e manda rodar em background, este script cria um diretório com o nome do arquivo a ser baixado, baixa o arquivo, quando estiver completamente baixado move para o diretório do repositório.

no período de tempo que o arquivo estiver sendo baixado, se houver outra requisição deste, será automaticamente descartada, a não ser que o primeiro download tenha ocorrido erro e o arquivo não foi baixado totalmente, desta forma o download continua.

segue o script


```
#!/bin/bash
# Baixa arquivos de atualizações do windows update
WGET=`which wget`
VAR=`ps axf | grep $1 | grep -v grep`
URL=$1
VAR1=`echo $URL | awk -F "/" '{printf $NF}'`
ARQ=`echo $VAR1 | awk -F "?" '{printf $1"-"$2}'`
 
if [[ $VAR != "" ]]; then
   cd /var/www/WINUP2/temp
   mkdir $ARQ
   cd $ARQ
   wget -q -c $URL
   mv * /var/www/WINUP2/.
   #cp * /var/www/WINUP2/.
   cd /var/www/WINUP2/temp
   rm -rf $ARQ
else
   exit 0
fi
```

 para uso deste script basta mudar a linha abaixo


```
exec("cd /var/www/WINUP2 && umask 022 && /usr/bin/wget $url && /bin/chmod +r /var/www/
WINUP2/.$arquivochar");
```

 para


```
exec("sh /etc/squid/winup2.sh $url &");
```

 não cheguei a testar a fundo, mas a idéia é evitar que o squid repasse o endereço de um arquivo que não esteja totalmente baixado.

----------


## arium

como script paralelo é possivel... mais se vc colocar soh aquela linha dentro do script e retirar a original.. o user nao vai recebe o arquivo.


a ideia é boa para redes de pouca população mesmo.

----------


## lucianogf

o cliente não vai receber o arquivo na primeira requisição, mas quando o arquivo estiver totalmente baixado e houver outra requisição ele receberá o endereço.

de qualquer forma o windows fará outra requisição se o arquivo não estiver completamente baixado, pois ele checará o arquivo e verá que não está completo antes de começar a baixar.

----------


## giendo

Na configuração esta aparecendo o seguinte:
entrada: http://img4.orkut.com/img/castro/google_logo_sml.png
saida: http://img1.orkut.com/img/castro/google_logo_sml.png
nao redirecionado
entrada: http://img4.orkut.com/img/castro/orkut_logo_sml.png
saida: http://img1.orkut.com/img/castro/orkut_logo_sml.png
nao redirecionado

onde poderia estar errando uma vez que não está direcionando?

#!/usr/bin/perl
$|=1;
while (<>) {
open $fh, ">>/tmp/debug_url_redirect.log";
@X = split;
$url = $X[0];
print $fh "entrada: $url\n";

#ORKUT
if ($url =~ /^http:\/\/img[2-9]\.orkut\.com.*/) {
$url =~ s/img[0-9]/img1/;
print $fh "saida: $url\n";
print "$url\n";
}

#AVIRA
# if ($url =~ /^http:\/\/dl[1-9]\.avgate\.net.*/) {
# $url =~ s/dl[0-9]/dl7/;
# print $fh "saida: $url\n";
# print "$url\n";
# }
#AVAST
if ($url =~ /^http:\/\/download[0-9]{3}.avast.com/) {
$url =~ s/download[0-9]{3}/downloadyyy/;
print $fh "saida: $url\n";
print "$url\n";
}
#AVG 
if ($url =~ /^http:\/\/akamai.avg.com/) {
$url =~ s/akamai/downloadfree/;
$url =~ s/softw\/80\///;
print $fh "saida: $url\n";
print "$url\n";
}
if ($url =~ /^http:\/\/update.avg.com/) {
$url =~ s/update/guru/;
print $fh "saida: $url\n";
print "$url\n";
} 


#Windown Update Caching - Squid Proxy - By Luiz Biazus
#WINDOWS UPDATE LOOP PRIMARIO
if ($url =~ /^http:\/\/download.windowsupdate.com/) {
@achar = split(/\//, $url);
$arquivoachar = $achar[$#achar];
$resultado = `/bin/ls /var/www/html/WINUP`;
@array = split(/\n/, $resultado);
$flag = 0;
for $i (0 .. $#array){
if($array[$i] eq "$arquivoachar") {
$flag = 1;
$id=`/usr/bin/id`;
print $fh "Windows Update Redirecionado de $url Para http://200.205.31.151/WINUP/$arquivoachar user $id\n";
$url = "http://200.205.31.151/WINUP/$arquivoachar";
print $fh "saida: $url\n";
print "http://200.205.31.151/WINUP/$arquivoachar\n";


}

$i++;
}

if ($flag == 0 ) {
exec("cd /var/www/html/WINUP && umask 022 && /usr/bin/wget $url && /bin/chmod +r /var/www/html/WINUP/.$arquivochar");
print $fh "saida: arquivoachar $arquivoachar $url\n";
print "$url\n";
}

}


#WINDOWS UPDATE LOOP SECUNDARIO

if ($url =~ /^http:\/\/au.download.windowsupdate.com/) {
@achar = split(/\//, $url);
$arquivoachar = $achar[$#achar];
$resultado = `/bin/ls /var/www/html/WINUP2`;
@array = split(/\n/, $resultado);
$flag = 0;
for $i (0 .. $#array){
if($array[$i] eq "$arquivoachar") {
$flag = 1;
$id=`/usr/bin/id`;
print $fh "AU Windows Update Redirecionado de $url Para http://200.205.31.151/WINUP2/$arquivoachar user $id\n";
$url = "http://200.205.31.151/WINUP2/$arquivoachar";
print $fh "saida: $url\n";
print "http://200.205.31.151/WINUP2/$arquivoachar\n";


 }

$i++;
}
if ($flag == 0 ) {
exec("cd /var/www/html/WINUP2 && umask 022 && /usr/bin/wget $url && /bin/chmod +r /var/www/html/WINUP2/.$arquivochar");
print $fh "AU saida: arquivoachar $arquivoachar $url\n";
print "$url\n";
}

}

else {
print $fh "nao redirecionado\n";
print "\n";
}
close $fh;
}


## sur_dominios.txt
.orkut.com
.avast.com
guru.avg.com
downloadfree.avg.com
akamai.avg.com
update.avg.com
.avgate.com
au.download.windowsupdate.com
download.windowsupdate.com
.update.microsoft.com

Gilberto

----------


## lucianogf

o "nao redirecionado" neste caso aparece de intrometido, pois o serviço foi feito, veja que em "saída" existe uma nova url para o endereço.

----------


## arium

exatamente amigo esta tudo certo como pode ver ele esta sendo redirecionado do img4 para o img1 .

----------


## giendo

No arquivo /tmp o download do windows nao esta sendo redirecionado:

entrada: http://au.download.windowsupdate.com...a53e56f015.cab
entrada: http://au.download.windowsupdate.com...a53e56f015.cab
entrada: http://download.windowsupdate.com/v8...cab?0809060018
entrada: http://update.microsoft.com/v8/windo...cab?0809060019

onde poderia esta errando na configuração? (minhas configurações estão no post 217)

Grato

Gilberto

----------


## lucianogf

você adicionou o endereço au.download.windowsupdate.com a acl

----------


## giendo

> você adicionou o endereço au.download.windowsupdate.com a acl


Adicionado, mas continua com o mesmo erro.

Gilberto

----------


## giendo

Lucianogf, obrigado pela atenção

Já descobri o erro: como uso o freebsd alterei as linhas /usr/bin/wget para /usr/bin/fetch.

Gilberto

----------


## giendo

No /var/log/squid/cache.log, estão aparecendo esses erros. Quem teve esses erros e como resolveu?

2008/09/08 10:59:34| helperHandleRead: unexpected reply on channel 0 from url_rewriter #4 ''
2008/09/08 10:59:34| helperHandleRead: unexpected reply on channel 0 from url_rewriter #4 ''

Gilberto

----------


## arium

isso acontece porque a url de entrada e de saida são as mesmas! não sendo esperado isso pelo squid(gerando um mini loop). por gentileza se puder pesquisar á respeito disso e conseguir eliminar! ficaremos muito gratos!

----------


## neon

> isso acontece porque a url de entrada e de saida são as mesmas! não sendo esperado isso pelo squid(gerando um mini loop). por gentileza se puder pesquisar á respeito disso e conseguir eliminar! ficaremos muito gratos!


aff, até que enfim consegui ler todos os posts.

alow Luiz, como dito pra vc na Viva o Linux, fiz um script para o Youtube, baseado no seu, apenas em shell-script.

fiz o ajuste do sed para alterar o player.

segue o script



```
#!/bin/sh
 
# nome: rw_youtube.sh
 
#############################################################
# Script de URL Rewrite para cache do Youtube               #
# Desenvolvido por Wenderson Souza ([email protected]) #
# Criado em 16 de setembro de 2008 as 01:10 hs              #
# Modificado em 16 de setembro de 2008 as 01:30 hs          #
#############################################################
# Creditos                                                  #
# Script com adaptacoes do "Script de cache do youtube      #
# parte 2 desenvolvido por Luiz Biazus e Andre Chiodi       #
# em: http://www.vivaolinux.com.br/artigo/Cache-do-Youtube- #
# efetivo-no-Linux                                          #
#############################################################
# Licenca GNU                                               #
# Este script pode ser utilizado, modificado e distribuido  #
# livremente, desde que seja mantida referencia ao(s) de-   #
# senvolvedores referenciados acima.                        #
#############################################################
 
#
# configuracoes
#
 
# mascara de criacao dos arquivos
umask 022
 
# destino dos arquivos
destino_video=/disco2/YOUTUBE
 
# local dos videos no seu servidor
servidor_http=http://www.seudominio.com.br/YOUTUBE/
 
# ativacao do log (0-desativado 1-ativado)
log_ativado=1
log_destino=/tmp/rw_youtube.log
 
#
# inicio do script
# deste ponto em diante vc nao deve alterar nada
#
while read p1 p2 p3 p4 p5 p6 p7 p8 p9 p10
do
 
#
        # leitura dos parametros
        #
        if [ "$log_ativado" = "1" ]; then
                echo "" >> $log_destino
                echo "----------------------- INICIO" >> $log_destino
                echo "url: $p1" >> $log_destino
#               echo "p2: $p2" >> $log_destino
#               echo "p3: $p3" >> $log_destino
#               echo "p4: $p4" >> $log_destino
#               echo "p5: $p5" >> $log_destino
#               echo "p6: $p6" >> $log_destino
#               echo "p7: $p7" >> $log_destino
#               echo "p8: $p8" >> $log_destino
#               echo "p9: $p9" >> $log_destino
#               echo "p10: $p10" >> $log_destino
        fi
 
 
 
        #
        # validacoes
        #
 
        # verificar se foi passada alguma url
        if [ -z "$p1" ]; then
                if [ "$log_ativado" = "1" ]; then
                        echo " Nenhuma URL passada como parametro!" >> $log_destino
                        echo "----------------------- FIM" >> $log_destino
                fi
                exit 1
        fi
 
        # verificar se foi passada uma url de video do youtube
        if [ `echo $p1 | grep youtube | grep watch | wc -l` -lt 1 ]; then
                if [ "$log_ativado" = "1" ]; then
                        echo " A URL nao ' de um video do youtubbe!" >> $log_destino
                        echo "----------------------- FIM" >> $log_destino
                fi
                exit 1
        fi
 
        #
        # tratar url
        #
 
        # pegar dominio
        dominio=`echo $p1 | cut -d/ -f1,2,3`
 
        # pegar codigo do video
        arquivo1=`echo $p1 | cut -d/ -f4 | cut -d= -f2`
 
        # pegar nome real do arquivo
        arquivo2=`wget -qO - $p1 | grep -oE 'video_id=.*&t=[^\"&]*' | head -1`
 
 
 
        #
        # redirecionar ou baixar os arquivos
        #
 
        # se os dois arquivos ja existirem - retornar do cache
        if [ -e "$destino_video/$arquivo1.html" ] && [ -e "$destino_video/$arquivo1.flv" ]; then
 
                if [ "$log_ativado" = "1" ]; then
                        echo "Aviso: Ja' esta em cache!" >> $log_destino
                        echo "Redirecionado para $servidor_http/$arquivo1.html!" >> $log_destino
                fi
                echo "302:$servidor_http/$arquivo1.html"
 
        else
 
                # caso nao exista um dos dois, retornar o link original
                if [ "$log_ativado" = "1" ]; then
                        echo "Aviso: Ainda nao esta em cache!" >> $log_destino
                        echo "Abrindo URL original!" >> $log_destino
                fi
                echo $p1
 
                # se nao existir o html - baixa-lo
                if [ ! -e "$destino_video/$arquivo1.html" ]; then
                        if [ "$log_ativado" = "1" ]; then
                                echo "Aviso: Baixando arquivo $p1!" >> $log_destino
                        fi
                        wget -O "$destino_video/$arquivo1.html" "$p1" &&
 
                        # trocar os players
                        # obs: O sed versao 4 ou superior faz a alteracao no proprio arquivo (-i)
                        sed -i '/<div id="watch-this-vid">/,/<div id="watch-ratings-views">/c <div id="watch-this-vid"><div id="watch-player-div" class="flash-player"><embed type="application/x-shockwave-flash" src="'$servidor_http'/PLAYER/player.swf" style="" id="bannerswf" name="bannerswf" bgcolor="#ffffff" quality="high" allowfullscreen="true" allowscriptaccess="always" wmode="opaque" flashvars="file='$servidor_http'/'$arquivo1.flv'&fullscreen=true&autostart=true&" width="480" height="350"></div><div id="watch-main-area" > <div id="watch-ratings-views">' "$destino_video/$arquivo1.html" &&
                        chmod +rx "$destino_video/$arquivo1.html"
                fi
 
                # se nao existir o flv - baixa-lo
                if [ ! -e "$destino_video/$arquivo1.flv" ]; then
                        if [ "$log_ativado" = "1" ]; then
                                echo "Aviso: Baixando arquivo ${dominio}/get_video?${arquivo2}!" >> $log_destino
                        fi
                        wget -O "$destino_video/$arquivo1.flv"  "${dominio}/get_video?${arquivo2}" &&
                        chmod +rx "$destino_video/$arquivo1.flv"
                fi
 
        fi
 
        if [ "$log_ativado" = "1" ]; then
                echo "----------------------- FIM" >> $log_destino
        fi
 
done
```

 OBS: Utilizei seu mesmo player, mas estou quardando os videos todos na raiz.

Fiz em um arquivo apenas, creio que ficará mais leve.

Quando eu (e outros do forum) colocarem em producao com muitos usuarios veremos como fica a performance.

Depois podemos mudar para uma linguagem de nivel mais baixo para poder ganhar na performance, quem sabe em C. risos.

É isso ai.

----------


## paulojrandrade

Boa tarde pessoal, já li e re-li esse topico acho q umas 20 vezes, gostaria de saber se nao for de mais, é claro, algum colega q teve sucesso no assunto acima citado, favor postar o script completo. Explico, como fui criticado outra vez aqui no post, q eu deveria pesquisar mais, bla bla bla. Bom não é por preguiça, é q nao entendo patavinas de programação. Por isso q insisto q algum colega poste o script completo, pois os teste q fiz ao pedaço deu erros variados. estou nessa labuta ao menos 4 meses. E toda vez q dá um erro diferente um colega pergunta uma coisa e respondem outra. Peço a ajuda devcs, pois assim diminuiremos o tamanho post e ficará mais objetivo.
Desde já agradeço a compreensão de todos.

Abraço

 :Itsme:

----------


## cleciorodrigo

Aqui amigo um passo a passo pra vc Linux: Cache do Youtube efetivo no Linux [Artigo] 

Falow

Clecio

----------


## paulojrandrade

> Aqui amigo um passo a passo pra vc Linux: Cache do Youtube efetivo no Linux [Artigo] 
> 
> Falow
> 
> Clecio


 
Obrigado por ter respondido Clecio, mas esse tuto segui passo a passo umas 10 vezes nao obtive sucesso...
Valeu

Obs: Acho q o problema é aquela peça.... aquela q fica atraz do computador heheeh

----------


## arium

é isso ai wenderson!!

assim que tiver um tempo sobrando irei estudar suas modificações!

abraços!

----------


## arium

paulo! que distro você usa e que erros ocorrem?

----------


## neon

> assim que tiver um tempo sobrando irei estudar suas modificações!


cara, estou testando o script aqui e detectei um problema, nao sei se ocorre com o seu.

na primeira vez que vejo o video, ele faz todo o processo para baixar o video direitinho, cria o html, o sed esta substituindo o player.

a pagina original carrega, enquanto está baixando, mas o video do site original, so começa a carregar depois que o download do video para o hd termina.

isso acontece com o seu script?

se nao acontece, vou ter que estudar uma solução para isso.

grato,

----------


## arium

não acontece com o meu não amigo!

o meu apenas tem um controle que verifica se o download acabou ou não 

caso não acabou manda pra url original... caso acabou manda pro cache!

Abraços

----------


## neon

> não acontece com o meu não amigo!


o retorno do script para o squid deve ser apenas a URL ou deve-se acrescentar mais informações?

----------


## arium

á entrada vai ser:

URL <SP> client_ip "/" fqdn <SP> user <SP> method <SP> urlgroup
[<SP> kvpairs] <NL>


a saida:

And the rewriter may return a rewritten URL. The other components of
the request line does not need to be returned (ignored if they are).

ou seja só a url o resto nao precisa  :Smile: 

o maximo que vc pode fazer é isso:

The rewriter can also indicate that a client-side redirect should
be performed to the new URL. This is done by prefixing the returned
URL with "301:" (moved permanently) or 302: (moved temporarily).

adicionando 301: ou 302: na frente da url tipo 302:youtube.com.br

mais não vi nenhuma utilidade nisso :P

----------


## neon

> And the rewriter may return a rewritten URL. The other components of
> the request line does not need to be returned (ignored if they are).


ok ok,

entao meu script está certo retornando apenas a url (original) ou a url com 302:url_local. (apesar de nao ver utilidade tb, mas aparece no log como REDIRECT)

e eu retorno a URL original antes mesmo de iniciar o download, ai ele abre normal o site. so que o vídeo na carrega normalmente.

tirei a url_rewrite pra testar e esta funcionando normal.

vou tentar conseguir um tempo pra fazer mais testes hoje, pois o negocio aqui está "apurado".

----------


## xbili

Opa...
deixo aqui o meu reconhecimento de que foi uma excelente ideia
que vai ajudar em muito meu caso e dos demais.
Tive uma certa dificuldade para faze-lo funcionar

Baixava o arquivo mais quando ia assistir o video novamente
ele nao puxado do arquivo já baixado, olhei varias respostas aqui
e nao achei nenhuma solucao para o caso, então tentei revisar
o script e ver se eu fiz algo de errado, e descobri no arquivo
biazuspart2.sh quase nas suas ultimas linhas o seguinte comando
chown proxy :Stick Out Tongue: roxy $diretorio/$arquivoachar -R &&
então vi que as permisões estava para um usuario que nao tenho em meu servidor
pois utilizo outro usuario. Então apenas troque nessa linha para o usuario certo
e resolveu meu problema, acho que deve ter mais gente com essa dificuldade
e outra questão tambem após a mudança do usuario que tive que fazer
é deletar dentro de cada diretorio aonde existe o video um arquivo
com nome 2

Comando para deletar o arquivo de todos os diretorios de videos:
find diretorio_principal_youtube -type f -name "2" | xargs rm

Feito isto funciona perfeito. Basta seguir o tutorial do vivaolinux

Abraço a todos.

----------


## paulojrandrade

> paulo! que distro você usa e que erros ocorrem?


 Ola Arium, bom tentei no Slack12 e no Slamd64, mas como sou iniicante me perdi nas configurações, pois nao diferentes, entai decidi usar o Ubuntu como é a distro q mostra no Vivaolinux, só q deu erro diferentes...

1- * Starting web server apache2 [Wed Sep 24 15:35:25 2008] [error] 
VirtualHost *:80 -- mixing * ports and non-* ports with a NameVirtualHost address is not supported, proceeding with undefined results
[Wed Sep 24 15:35:25 2008] [warn] NameVirtualHost *:80 has no VirtualHosts [ OK ]

2- entrada:


YOUTUBE AINDA ESTA BAIXANDO VIDEO watch__v=KONfHAXogks nao redirecionado
entrada: http://br.youtube.com/get_video?vide...cBxHzTMY5sGSYE
nao redirecionado
entrada: http://br.youtube.com/crossdomain.xml
nao redirecionado
entrada: http://br.youtube.com/xlb/pt-br.xlb
nao redirecionado

----------


## Bruno

E ai Galera peguei o bonde andando 
e no que posso ajudar
eu testei a duvida dos cache
eu tenho 3 scsi de 76 gb 15mil rpm ultra 320mb 
fiz em raid0 e em 3 cache em 3 disck e em raid0 ficou mais rapido

----------


## arium

obvio que fica mais rapido raid
é uma coisa logica + HD +IO +IO + SPEED 

quando eu comentei em um outro post aqui (até nem sei se nao foi nesse acho que foi) sobre o raid vieram me fala bobagem que tinham discutido e nao dava certo... não aumentava performance

fazer oq! :P

pelomenos agora vc sabe ahhahahaha
valeu pelo feedback  :Wink:

----------


## Bruno

E ai Arium blz ....
*em que ponto esta o* url_rewrite ??
orkut ok 
avast ok 
avg ok

----------


## arium

ultimo script full estavel em Forum Proxy Masters &bull; Index page

----------


## aba3k

Olá
Quero agradecer aos colegas pela excelente solução e por compartilhar o script.
Estou tentando utilizar no Debian Lenny com Squid3, mas está dando o seguinte erro:

2008/10/08 10:03:13| helperHandleRead: unexpected read from redirector #8, 6626 bytes '^?ELF^A^A^A'
2008/10/08 10:03:13| WARNING: redirector #1 (FD 8) exited
2008/10/08 10:03:13| WARNING: redirector #2 (FD 9) exited
2008/10/08 10:03:13| WARNING: redirector #3 (FD 10) exited
2008/10/08 10:03:13| WARNING: redirector #4 (FD 11) exited
2008/10/08 10:03:13| WARNING: redirector #5 (FD 12) exited
2008/10/08 10:03:13| Too few redirector processes are running
FATAL: The redirector helpers are crashing too rapidly, need help!

Pesquisei na net e não cheguei a entender qual seria a origem do problema. Estou usando o script para fazer cache do WU e de programas anti-vírus. Pode ser que eu tenha feito algo errado, usei como base o tutorial do Youtube, e removi a parte referente ao Youtube e orkut (não necessários para mim).

Amigo arium, gostaria de saber se você (ou outro pessoa) vai publicar algum tutorial sobre a instalação para o WU, pois seria de grande ajuda.

Obrigado.

----------


## chiareloto

Aconteceu comigo ... e problema no crt+c crt+v...certamente esta colando alguma coisa errada...tenta selecionar tudo com o mouse clicar em copiar e depois em colar...

----------


## sergio

Mais uma coleção de scripts para url_rewrite podem ser econtradas no link abaixo:

Ubuntu Forums - View Single Post - [ubuntu] Youtube caching using squid

----------


## galahad

Como é que anda essa thread?

Arium,

ainda andando com o script? Alguma coisa que eu possa ajudar?

----------


## arium

estamos tocando o projeto 

www.biazus.com/forum

já esta em php usando mysql suporta antivirus , orkut , WU, Youtube e google videos!

por enquanto só eu to fazendo algo, to pocurando ajuda.. toda ajuda é bem vinda  :Smile:  caso tenha interesse será muito bem vinda mano velho!


Abração

----------


## galahad

Arium,

não achei nada no forum que você indicou. O endereço está certo?

:wq!

----------


## arium

os posts soh aparecem mediante a registro  :Smile:

----------


## UlissesCampos

Pra mim da um erro do php, nao consigo entrar pra registrar

----------


## reginaldotg

ta funcionando me cadastrei hj e funcionou blz, gostaria de da uma nova ideia que seria fazer uma rajada de 15 segundo, tipo o cliente 256 kb e os primeiro 15 segundo ele vai a uma velocidade 512 kb, ja tentei mais nao consegui atualmente utilizo slack e cbq

----------

