+ Responder ao Tópico



  1. #221

    Padrão

    Citação Postado originalmente por lucianogf Ver Post
    você adicionou o endereço au.download.windowsupdate.com a acl
    Adicionado, mas continua com o mesmo erro.

    Gilberto

  2. #222

    Padrão

    Lucianogf, obrigado pela atenção

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

    Gilberto

  3. #223

    Padrão

    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

  4. #224

    Padrão

    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!

  5. #225

    Padrão

    Citação Postado originalmente por arium Ver Post
    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

    Código :
    #!/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.

  6. #226
    Assessoria a provedores Avatar de paulojrandrade
    Ingresso
    Apr 2006
    Localização
    Dourados, Brazil
    Posts
    291
    Posts de Blog
    1

    Exclamation Se nao for pedir de mais !!!

    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


  7. #227

  8. #228
    Assessoria a provedores Avatar de paulojrandrade
    Ingresso
    Apr 2006
    Localização
    Dourados, Brazil
    Posts
    291
    Posts de Blog
    1

    Padrão

    Citação Postado originalmente por cleciorodrigo Ver Post
    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

  9. #229

    Padrão

    é isso ai wenderson!!

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

    abraços!




  10. #230

    Padrão

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

  11. #231

    Padrão

    Citação Postado originalmente por arium Ver Post
    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,

  12. #232

    Padrão

    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

  13. #233

    Padrão

    Citação Postado originalmente por arium Ver Post
    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?

  14. #234

    Padrão

    á 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

    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

  15. #235

    Padrão

    Citação Postado originalmente por arium Ver Post
    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".

  16. #236

    Padrão

    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 proxyroxy $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.

  17. #237
    Assessoria a provedores Avatar de paulojrandrade
    Ingresso
    Apr 2006
    Localização
    Dourados, Brazil
    Posts
    291
    Posts de Blog
    1

    Talking Slackware, Slamd64 e Ubuntu 8.04

    Citação Postado originalmente por arium Ver Post
    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

  18. #238
    Moderador Avatar de Bruno
    Ingresso
    Nov 2002
    Localização
    Guarapuava-PR
    Posts
    4.181
    Posts de Blog
    1

    Padrão

    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

  19. #239

    Padrão

    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

  20. #240
    Moderador Avatar de Bruno
    Ingresso
    Nov 2002
    Localização
    Guarapuava-PR
    Posts
    4.181
    Posts de Blog
    1

    Padrão

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