Caching Youtube con Squid 2.7
Posted by: Alejandro Gramajo in Linux, Software, tags: Debian, SquidHola a todos, hace tiempo que no escribiamos en el blog. Aca les dejamos una funcion interesante del proxy server Squid.
Los usuarios de Squid sabran que por lo general y por default no se puede cachear videos de Youtube. Existen algunas razones, vamos a enumerar algunas:
- El video viene de varios cache servers internos que usa Youtube (o Google) entonces la url cambia.
- Si el video se cancela no baja entero.
Para evitar lo primero, a partir de la version 2.7 se incorpora una funcion “storeurl rewrite”, lo que permite separar (parseando) la URL que utiliza para buscar en su storage interno (backend - el cache en si mismo).
De esta manera podemos crear que multiples URL destino hagan referencia al mismo contenido del backend, asi evitamos duplicacion de contenido. Muy util para CDN.
Voy a poner un ejemplo simple: El sitio example.com tiene dos servidores web y me traen la misma imagen.gif, por default en Squid se almacena como dos imagenes diferentes, si haces un rewrite del store, podemos apuntar a la misma.
http://servidor1.example.com/image.gif http://servidor2.example.com/image.gif
Podemos reescribir algo como: (sintaxis en Perl - mas info ver regex o me preguntan)
$url =~s!http://servidor\d+\.example\.com/(.*\.gif)!http://s-example.INTERNAL/$1!;
Expresion regular que tiene como funcion matchear servidor(numero) y cualquier nombre como gif, ese nombre se reemplaza en $1. Y se reescribe a un nombre de fantasia que invente yo.
Si mas o menos entienden, la idea es rescribir la url a una forma normalizada, tenemos que poner manos a la obra para Youtube.
Cuando ejecutamos un video este se va a buscar a los caches internos que tienen, y la url tiene mas o menos esta forma: (llama a una funcion videoplayback)
http://v19.lscache7.c.youtube.com/videoplayback?ip=0.0.0.0& sparams=id%2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=904708%2C905208& algorithm=throttle-factor&itag=34&ipbits=0&burst=40&sver=3&expire=1264122000&key=yt1& signature=654F0FB48D631BF220381FED556AE9E905989E71.0D479B82F2C57401EDB9AEB24A41C4447DA35E47& factor=1.25&id=3e9103da619d1f28&
De esos tags podemos desprender varias cosas, pero en este caso solo nos interesa algo que identifique univocamente al video, nos quedamos con el parametro “id”.
Hacemos un rewrite asi:
$url =~s!^http://.*?/videoplayback\?.*id=([^&]+).*!http://v-youtube.INTERNAL/ID=$1!;
Si lo probamos (copiando la url por STDIN, nos devuelve por STDOUT la reescritura.
# perl /etc/squid/store.pl http://v19.lscache7.c.youtube.com/videoplayback?...&id=3e9103da619d1f28& http://v-youtube.INTERNAL/ID=3e9103da619d1f28
Y asi.
Parametros a de configuracion a modificar del squid.conf
# aca configuramos el store rewrite storeurl_rewrite_program /etc/squid/store.pl acl store_rewrite_list urlpath_regex get_video\? videoplayback\? videodownload\? storeurl_access allow store_rewrite_list storeurl_access deny all cache allow store_rewrite_list acl QUERY2 urlpath_regex get_video\? videoplayback\? videodownload\? cache allow QUERY2 # patrones para caching y que ignoremos los encabezados No-Cache refresh_pattern get_video\? 10080 90% 999999 override-expire ignore-no-cache ignore-private refresh_pattern videoplayback\? 10080 90% 999999 override-expire ignore-no-cache ignore-private refresh_pattern videodownload\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
# importante para los range y que baje todo el video, y un pequeño bug con el tamaño de la url minimum_object_size 512 bytes maximum_object_size_in_memory 32 KB range_offset_limit -1 maximum_object_size 200 MB quick_abort_min -1
Y ahora la magica pieza del store rewrite.
#!/usr/bin/perl
$|=1;
while (<>) {
@X = split;
$url = $X[0];
$url =~s!^http://.*?/videoplayback\?.*id=([^&]+).*!http://v-youtube.INTERNAL/ID=$1!;
print "$url\n";
}
Solamente les dejo el ejercicio para “youtube usando videoplayback”, pero lo tengo para otros sitios de videos de Google, Metacafe, Dailymotion, Vimeo, Soapbox, BlipTV, Break, TV Uol (Brasil), y otros sitios de contenido XXX que no voy a poner aca porque Google me va a indexar y va a pensar mal de mi. Cualquier cosa me preguntan.
Miramos el access.log del squid y cuando acceso a un video (la segunda vez ya sale del cache):
1264093473.644 50428 172.22.0.153 TCP_HIT/200 9817978 GET http://v14.lscache8.c.youtube.com/videoplayback?ip=0.0.0.0&sparams=id% 2Cexpire%2Cip%2Cipbits%2Citag%2Calgorithm%2Cburst%2Cfactor&fexp=903707& algorithm=throttle-factor&itag=5&ipbits=0&burst=40&sver=3&expire=1264118400&key=yt1& signature=0913DFCF267D50241CBA4C84ECBB57450287AE31.262DB100A4F3960D2B66A26591F395D84FED2526& factor=1.25&id=5a84b0718d025dea& - NONE/- video/x-flv
Hit, hit!
Nos ahorramos cada vez que ven ese video 9MB al estar en el cache.
Saludos a todos
Entries (RSS)
January 25th, 2010 at 9:50 pm
Muy interesante logre hacer el cache de youtube, estube buscando informacion y solo la encontraba en thailandes y los traductores poco podian hacer, si alguien mas necesita hacer el cacheo en smoothwall, sigan estos pasos:
entramos a la consola con putty y en la terminal:
crear la carpeta /etc/squid
root$ mkdir /etc/squid
despues creamos el script en perl para cambiar las direcciones
root$ vi /etc/squid/store.pl
lo llenamos con el codigo q nos proporciono el buen Alejandro Gramajo:
#!/usr/bin/perl
$|=1;
while (<>) {
@X = split;
$url = $X[0];
$url =~s!^http://.*?/videoplayback\\?.*id=([^&]+).*!http://v-youtube.INTERNAL/ID=$1!;
print \"$url\\n\";}
ponemos permisos de ejecucion a nuestro script
root$ chmod 755 /etc/squid/store.pl
Ahora editamos el archivo de configuracion alterno de nuestro Smoothwall
root$ vi /var/smoothwall/proxy/advanced/acls/include.acl
y lo llenamos con el codigo:
storeurl_rewrite_program /etc/squid/store.pl
acl store_rewrite_list urlpath_regex get_video\\? videoplayback\\? videodownload\\?
storeurl_access allow store_rewrite_list
storeurl_access deny all
cache allow store_rewrite_list
acl QUERY2 urlpath_regex get_video\\? videoplayback\\? videodownload\\?
cache allow QUERY2
refresh_pattern get_video\\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videoplayback\\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videodownload\\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
minimum_object_size 512 bytes
maximum_object_size_in_memory 32 KB
range_offset_limit -1
maximum_object_size 200 MB
quick_abort_min -1
Ahora solo reiniciamos el servicio de Advanded web proxy desde la interface web y listo!
Y como peticion podrias colocar los demas sitios q mencionas, sobre todo los xxx … gracias y saludos
February 13th, 2010 at 10:58 am
Hola,, segui la guia talcual,, pero queria consultar lo siguiente
No se porque cuando habilitos estas reglas el proxy me comienza a rechazar las conexiones.
Puede ser por alguna acl ???
February 13th, 2010 at 4:41 pm
Ariel, seguramente tenes que revisar tus ACL.
Saludos,
Alejandro
February 13th, 2010 at 4:53 pm
Gracias,, en este ejemplo hace referencia a alguna acl ?? perdona que te pregunte pero soy nuevo en esto
porque veo esto
acl store_rewrite_list urlpath_regex get_video\\\\\\\\? videoplayback\\\\\\\\? videodownload\\\\\\\\?
storeurl_access allow store_rewrite_list
storeurl_access deny all
cache allow store_rewrite_list
y no me queda claro
February 13th, 2010 at 5:21 pm
Ariel,
El ejemplo que puse no tiene una configuracion completa de Squid, solamente es la parte para redirigir el store al script.
Ese ACL que estas viendo es solo para “matchear” parte de las URL de Youtube.
La configuracion que te viene por default en Squid es completa, deberias agregar tu red interna.
Algo como esto.
acl mynetworks src 192.168.1.0/24 192.168.2.0/24
http_access allow mynetworks
Y revisar el orden, ya que despues de eso debe haber un deny.
Saludos
February 15th, 2010 at 9:08 am
Gracias nuevamente,, el problema que descubri es que cuando habilito la linea
storeurl_rewrite_program /etc/squid/store.pl , squid no inicia. El archivo lo tengo creado en el directorio, lo que no se si funciona.
es una Debian 5 .
Como puedo probar si el archivo perl funciona correctamente ?
February 15th, 2010 at 11:40 am
Le diste los permisos de ejecucion?
# chmod a+x /etc/squid/store.pl
Verifica si no pusiste un error sin querer asi:
# perl -c /etc/squid/store.pl
/etc/squid/store.pl syntax OK
Espero que sirva.
Me parece que necesitas consultoria de BAICOM Networks! Jeje
Saludos
February 15th, 2010 at 11:42 am
fecticamente me devuelve un error al ejecutar el script:
Can\’t find string terminator \’\"\’ anywhere before EOF at /etc/squid/store.pl line 7.
February 15th, 2010 at 6:18 pm
Gracias… Ya lo solucione.. era un espacio en el scripts, que no debia estar.
March 9th, 2010 at 9:57 pm
Hola, llegué a este artículo navegando en google, una felicitación por compartir con los que no somos tan avanzados en estos temas tus conocimientos…
Tengo en producción un server con smootwall 3 con advanced proxy instalado, llevé a cabo los pasos que Jahvier tan amablemente compartió con nosotros, y cuando lo habilito se muere squid, revisando los logs me da lo siguiente:
The store_rewriter helpers are crashing too rapidly, need help!
Problemas de hardware no creo, pues es un cpu nuevo, con tarjeta madre intel y un celeron 430 a 1.8 ghz.
Ojalá puedan ayudarme, pues en mi red más del 60% del tráfico es a youtube, y si puedo cachear los videos realmente seré feliz
Muchas gracias!!
March 9th, 2010 at 10:49 pm
Hola Jesus. Gracias por tus comentarios.
Revisaste los permisos del script en perl como pusimos arriba?
Saludos
March 10th, 2010 at 1:11 pm
Hola gracias por contestar, ya revisé, y el problema que tenía es que utilicé las líneas de código tal como las puso Jahvier, el problema es que hay que eliminar las \\\\ dobles, dejando únicamente una \\; al momento lo estoy probando y funciona fabuloso, solo una pregunta, es conveniente vaciar el caché de squid cuando ya llegue a determinado tamaño para evitar que empiece a dar errores o se ponga lento? Lo tengo instalado en un disco duro de 250 gigas, y pienso que de acuerdo a la carga que tiene podría llenarse tal vez en un mes o algo así, algún consejo?
Muchas gracias por tu ayuda!!
March 10th, 2010 at 2:29 pm
Jesus, si lo dejas tal cual esta la expiracion se producira de manera automatica podes jugar con estos valores
refresh_pattern get_video\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videoplayback\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videodownload\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
Podes reemplazar 999999 es la cantidad de tiempo en minutos que un objeto recide sin expiracion explicita.
Y por otro lado el squid no consume mas espacio que lo que vos definis en cache_dir, por defecto:
cache_dir ufs /var/spool/squid 100 16 256
Mi recomendacion si tenes 20g y que arme una estructura de directorios mayor:
cache_dir ufs /var/spool/squid 20000 64 256
Saludos
March 12th, 2010 at 6:54 pm
Muchas gracias por los consejos, voy a probar algunos días, y a ver que tal funciona
Muchs gracias de nuevo!!!
March 21st, 2010 at 11:49 am
Hola he estado probando el script y ha funcionado bien, salvo el detalle que al parecer los videos expiran en algunos días, pero si me está ahorrando algo de tráfico; tengo una duda, yo al menos me entiendo razonablemente bien con la línea de comandos, pero no se programación
viendo en los foros de smoothwall hay una contribución que hace caché de actualizaciones de windows y antivirus, pongo a continuación el enlace http://community.smoothwall.org/forum/viewtopic.php?f=26&t=23480 , y entiendo que squid no soporta más de un redirector, al menos en smoothwall; habrá alguna forma de combinar ambos códigos, para así poder cachear youtube y actualizaciones en forma simultánea? En verdad que esto sería fabuloso.
Saludos!!
March 22nd, 2010 at 3:31 am
Hola, quisiera saber si es posible hacer eso con el squid pero en windows? (ya se que linux es mejor pero por X motivos tengo que usar windows en ese servidor)
March 22nd, 2010 at 11:19 am
Hola Jesus,
podes combinar ambas cosas sin problemas, pero en este caso no te vale la pena, ya que con squid podes cachear sin problemas los updates de MS y otros, aca te dejo algunos refresh que yo uso, tambien podes usar tags como override-expire para no darle importancia a cuando el sitio de obliga a expirar los archivos, pero esto puede traer otros problemas.
refresh_pattern -i \.gif$ 10080 100% 43200
refresh_pattern -i \.jpg$ 10080 100% 43200
refresh_pattern -i \.jpeg$ 10080 100% 43200
refresh_pattern -i \.bmp$ 10080 100% 43200
refresh_pattern -i \.mid$ 10080 100% 43200
refresh_pattern -i \.wav$ 10080 100% 43200
refresh_pattern -i \.ico$ 10080 100% 43200
refresh_pattern -i \.yim$ 10080 100% 43200
refresh_pattern -i \.jar$ 10080 100% 43200
refresh_pattern -i \.ldict$ 10080 100% 43200
refresh_pattern -i \.swf$ 10080 100% 43200
refresh_pattern -i \.class$ 10080 100% 43200
refresh_pattern -i \.cab$ 10080 100% 43200
refresh_pattern -i \.flv$ 10080 90% 999999 override-expire
refresh_pattern windowsupdate\.microsoft\.com/.*\.(cab|exe|psf) 4320 100% 120960 reload-into-ims
refresh_pattern update\.microsoft\.com/.*\.(cab|exe|psf) 4320 100% 120960 reload-into-ims
refresh_pattern office\.microsoft\.com/.*\.(cab|exe|psf) 4320 100% 120960
refresh_pattern windowsupdate\.com/.*\.(cab|exe|psf) 4320 100% 120960 reload-into-ims
refresh_pattern download\.microsoft\.com/.*\.(cab|exe|psf) 4320 100% 120960 reload-into-ims
refresh_pattern microsoft\.com 4320 100% 10080
Seguramente cuando tenga un poco de tiempo voy a ampliar la configuracion del squid en este post o en otro con mas features para cachear otros contenidos.
Saludos
March 22nd, 2010 at 11:21 am
Hola Kakasi, podes usar Squid en Windows, y en cuanto al script de Perl vas a tener que instalar algun interprete como ActiveState Perl.
No es recomendable en terminos de performance utilizar Windows, pero sino te queda otra, mucha suerte!
Saludos
March 27th, 2010 at 10:17 am
en ubuntu server como haria para hacer cache de videos una ayuda estoy verde
March 30th, 2010 at 12:59 pm
Hola Alejandro, me ha sido de gran ayuda la información brindada muchas gracias. Tengo instalado el Squid 2.7 en un centOS 5.4 y todo funciona correctamente; quisiera seguir fortaleciendo mi proxy, te agradecería bastante si me ayudaras a completar el cacheo de otros sitios como los videos de google y Metacafe, cuál es el procedimiento que debo seguir o qué algoritmos debo agregar al script. Entiendo que debo agregar al script algo como:
$url =~s!^http://.*?/videoplayback\\?.*id=([^&]+).*!http://v-youtube.INTERNAL/ID=$1!;
como lo haría para los otros casos??… también usan videoplayback??
Un cordial saludo Alejandro =D
April 7th, 2010 at 7:20 pm
Hola, me sale esteos mensajes:
2010/04/07 17:17:07| cache_cf.cc(346) squid.conf:128 unrecognized: ’storeurl_rewrite_program’
2010/04/07 17:17:07| cache_cf.cc(346) squid.conf:130 unrecognized: ’storeurl_access’
2010/04/07 17:17:07| cache_cf.cc(346) squid.conf:131 unrecognized: ’storeurl_access’
Tengo Debian 5 y squid3 Version 3.0.STABLE8
ya hice
# chmod a+x /etc/squid3/store.pl
# perl -c /etc/squid3/store.pl
/etc/squid3/store.pl syntax OK
hay que instalar algo adicional?
April 14th, 2010 at 3:50 pm
Hola Alejandro,
Muchas gracias por el aporte que generas, es un apoyo enorme a toda la comunidad.
Sin embargo, mi consulta es: como podemos determinar que tal sitio (Metacafe, BlipTV, Break, etc.) utilizan VIDEOPLAYBACK… en que nos tenemos que basar o como podemos buscar esta info a fin de poder generar nuestros propios SCRIPTS de configuracion sobre el SQUID.
De antemano agradezco tu sabia respuesta.
Saludos.
April 14th, 2010 at 6:48 pm
Rcpimeki, en squid 3 se llaman los tag de otra manera, fijate en la doc o instala con apt-get el squid 2.7 esta disponible.
Diego, próximamente voy a ampliar el articulo con otros sitios para caching, para agregar hay que analizar cada sitio en particular que funcion llama y descarga el flv.
Saludos,
Ale
April 14th, 2010 at 11:10 pm
Me podrias pasar a mi email las otras configuraciones que tienes para los otros sitios como Metacafe y tube8
Muchas gracias
April 18th, 2010 at 8:11 pm
Hola Ale
Gracias por tu valiosa información, sabes que he estado ampliando el script de perl, con el fin de almacenar en la cache, videos de otras webs; por tanto, he desarrollado uno que detallo a continuaciòn y de la misma manera, quisiera conocer tus comentarios acerca de este emprendimiento.
Lo he probado colocando variables estaticas, con links de diferentes sitios, dando resultados satisfactorios a nivel del script.
!——————————————————— 0 ———————————————————!
#!/usr/bin/perl
$|=1;
while () {
@X = split;
$url = $X[0];
if ($url =~ /([0-9A-Za-z_+]*\.flv)/) {
$url =”http://v-proxy.INTERNAL/ID=$1″;
print “$url \n”;
#print “$1 \n”;
}
elsif ($url =~ /(get_video|videodownload|videoplayback)?/) {
if ($url =~ /.*id=([^&]+).*/) {
$url = “http://v-proxy.INTERNAL/ID=$1″;
print “$url \n”;
#print “$1 \n”;
}
}
else {
print $x . $_ . “\n”;
}
}
!——————————————————— 0 ———————————————————!
Como se puede apreciar el script es bastante generico, es decir, que se podria cachear todo lo referente a videos de cualquier sitio, si tienen esa sintaxis (casi la mayoria)… Por tanto, si se requiere colocar seguridad unicamente para cachear ciertos dominios, lo pueden controlar en el fichero squid.conf con la ACL dstdomain.
Saludos Cordiales.
April 19th, 2010 at 5:42 pm
Probaste si te funciona con la nueva modificacion de las URL de youtube? watch?
me podras mandar a mi mail tu script?
por otro lado, queria consultarte algo que no me cierra.
en tu script creaste esta linea: $url =~s!^http://.*?/videoplayback\\?.*id=([^&]+).*!http://v-youtube.INTERNAL/ID=$1!;
se puede reemplazar por ejemplo videoplayback por watch? o la nueva url de youtube??, ya que en la nueva URL el ID no existe.
Saludos.. muy buen doc.
April 21st, 2010 at 10:46 am
Buenas a tod@s,
tengo una duda tras leer esto, que por un lado me viene bien, pero otro lado me gustaria saber si hay forma de guardar en el log del Squid las URL de los videos visitados…
me gustaria tener un registro de los videos que se han visto pero por defecto eso no puedo verlo en el log.
Conoceis algun modo??
salu2
May 12th, 2010 at 9:10 pm
Esto funciona actualmente ? , porque creo que youtube cambio de sintaxis y varios ejecutables como videocache dejaron de funcionar
May 15th, 2010 at 5:22 am
Podrian ayudarme para hacer trabjar esto en windows usando el cygwin y el squid 2.7 stable 8 (version windows) ???? Estoy en las nubes .
May 15th, 2010 at 8:09 am
OK, ya lo solucione, funciona, muchisimas gracias Alejandro.
Solo una consulta sobre este comentario
# importante para los range y que baje todo el video, y un pequeño bug con el tamaño de la url
Los valores de los object_size deben ser esos para evitar problemas? y podrias explicar a que te refieres con el bug de url, es decir con que parametro lo genero /soluciono. ??
May 15th, 2010 at 10:54 am
Por cierto , para hacerlo funcionar en windows puse esta linea
storeurl_rewrite_program C:/cygwin/bin/perl.exe C:/cygwin/usr/local/bin/store.pl
Funciona, pero no se si fue la opcion mas optima, como dije antes estoy en las nubes .
May 15th, 2010 at 11:26 am
Lo malo que al parecer cada vez que se abre video de youtube se activa un proceo perl.exe , he estado probandolo 10 minutos y cuando vero el administrador de tareas aparecen como 8 procesos perl.exe .
Tambien he notado que ya no cargan las imagenes que tenia cacheadas , es decir antes de colocar el codigo para el youtube, cargaban las paginas rapidamente porque ya las tenia en el cache, pero al poner el codigo al parecer esto ya no trabaja asi y demora en cargar las imagenes, no se si sea una incompatibilidad, yo he trabajado con el siguiente codigo
refresh_pattern -i \.gif$ 20000 90% 40000
refresh_pattern -i \.jpg$ 20000 90% 40000
….
Por cierto yo tengo la version de squid con delay pools, tendra algo que ver?
May 15th, 2010 at 10:20 pm
Se puede usar refresh_pattern con acls ?
Algo asi quiero hacer
acl static_images urlpath_regex -i \.(jpg|jpeg|gif|png)$
cache allow static_images
refresh_pattern static_images 0 20% 4320
May 18th, 2010 at 1:39 pm
En windows cachea pero la primera vez que carga se demora el doble , es asi en Linux?
Y por ejemplo este video no carga
http://www.youtube.com/watch?v=TTp_D2i92jU
A ustedes les carga?
May 20th, 2010 at 1:20 pm
Chino,
muy interesante, y dime en Squidnt como sería, bueno si no es mucha molestia
May 26th, 2010 at 4:55 pm
kakasi, i make this settings and work fine on Iexplorer 8 , but firefox stop my squid service. do you have the same problem? my mail is romerogz@hotmail.com
June 1st, 2010 at 5:25 pm
Funciona esto con squid 3.1 ?? alguien lo ha probado ?
June 5th, 2010 at 10:14 am
Esta solucion , Funciona con squid 3.1 ??
June 24th, 2010 at 3:59 am
Muy bueno la verdad es que justo con mi hermano estabamos haciendo un servidor para la cache de youtube
June 28th, 2010 at 11:19 am
probe tu configuracion y me funciono bien, me gustario saber si me puedes colaborar para poder cahear el resto de videos gracias
July 2nd, 2010 at 4:58 pm
buenas, estoy probando un server con centos y squid 3, el cual me permite cachar bastante bien, pero al poner las lineas de la configuracion para obtener los videos de youtube en el conf(previamente fue creado el store.pl) este servicio se detiene. Tengo habilitadas las acl mynetwork, alguien me podria dar una ayuda?
August 1st, 2010 at 10:54 pm
Hola
Felicitaciones!!!! Alejandro Gramajo por testear algo importante
En cuanto al cache youutube me funciona perfectamente, sólo que ahora no puedo cachear las paginas webs.
Cuanto desactivo el parametro de cache youtube vuelve a la normalidad.
esto es asi o existe un parametro mas para que cache los videos y tambien las paginas.
Agradecere su respuesta.
August 2nd, 2010 at 1:55 pm
LuisArtur, gracias por dejar tu comentario.
Con respecto al caching, con la configuración listada deben funcionarte tanto el caching de youtube como las paginas comunes, revisa los access list.
Ya que solamente ciertos patrones van a ser redirigidos al script que reescribe el store.
Saludos
August 5th, 2010 at 10:22 am
Hola, estoy tratando de configurar este script en squid 2.7 ( en realidad lusca-cache), parece funcionar bien, pero no se por que tengo un error cuando agrego las lineas
refresh_pattern get_video\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videoplayback\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videodownload\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
me devuelve el siguiente error
parse_refreshpattern: Unknown option ‘get_video\?’: override-expire
parse_refreshpattern: Unknown option ‘get_video\?’: ignore-no-cache
parse_refreshpattern: Unknown option ‘get_video\?’: ignore-private
parse_refreshpattern: Unknown option ‘videoplayback\?’: override-expire
parse_refreshpattern: Unknown option ‘videoplayback\?’: ignore-no-cache
parse_refreshpattern: Unknown option ‘videoplayback\?’: ignore-private
parse_refreshpattern: Unknown option ‘videodownload\?’: override-expire
parse_refreshpattern: Unknown option ‘videodownload\?’: ignore-no-cache
parse_refreshpattern: Unknown option ‘videodownload\?’: ignore-private
alguna line esta mal. nos e cual sera
August 5th, 2010 at 5:06 pm
Ya lo solucione,, agregando un \";\" .. sin las comillas al final de cada linea
ahora es normal que me aparezacan tantos procesos del store.pl , casi 100 tengo y el cpu,, me lo esta matando
August 5th, 2010 at 5:12 pm
Hola Lusca-Cache algunas cosas son diferentes, revisaste estos valores?
storeurl-rewrite-children 1
storeurl-rewrite-concurrency 10
Saludos
August 5th, 2010 at 5:38 pm
Gracias,, por tu ayuda,, lo voy a probar,, consulta
Esta solucion es la misma que hay en el sitio de squid ?
http://wiki.squid-cache.org/ConfigExamples/DynamicContent/YouTube
me refiero codigo del store.
August 5th, 2010 at 5:43 pm
No es la misma, fuimos modificando algunas URL ya que van cambiando en YouTube, lo mismo para otros sitios que fuimos incorporando a nuestra solución para empresas. (YouTuve, Google, Metacafe, Dailymotion, Vimeo, Soapbox, BlipTV, Break, TV Uol, etc)
Saludos
August 5th, 2010 at 5:46 pm
Este codigo que vos pones en el sitio ,, cachea (YouTuve, Google, Metacafe, Dailymotion, Vimeo, Soapbox, BlipTV, Break, TV Uol, etc) ?
August 5th, 2010 at 5:48 pm
No, solamente cachea YouTube el código que pusimos acá.
Saludos
August 5th, 2010 at 5:49 pm
consulta?,, ustedes venden el codigo que cache lo demas ?
August 5th, 2010 at 6:13 pm
En realidad nosotros, entre otras cosas, vendemos la consultoria e ingenieria de la solución que necesites. Y vamos liberando código de las cosas.
En este caso por ej. “Caching web”, podemos instalar un proxy web. Si se necesita performance o caching podemos usar Squid o Varnish.
Nuestra solución incorpora lo que fuimos investigando y vamos actualizando las mejoras en todos nuestros clientes. Porque algo que sucede con el store es que las URL en algunos sitios van cambiando.
Saludos
August 5th, 2010 at 6:24 pm
ahhh ok..
gracias,, lo voy a tener en cuenta,, no se porque pero no puedo ingresar el codigo en lusca,,
storeurl_rewrite_program /etc/squid/store.pl
acl store_rewrite_list urlpath_regex get_video\\? videoplayback\\? videodownload\\?
storeurl_access allow store_rewrite_list
storeurl_access deny all
cache allow store_rewrite_list
acl QUERY2 urlpath_regex get_video\\? videoplayback\\? videodownload\\?
cache allow QUERY2
refresh_pattern get_video\\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videoplayback\\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
refresh_pattern videodownload\\? 10080 90% 999999 override-expire ignore-no-cache ignore-private
minimum_object_size 512 bytes
maximum_object_size_in_memory 32 KB
range_offset_limit -1
maximum_object_size 200 MB
quick_abort_min -1
me devuelve
parse_refreshpattern: Unknown option ‘get_video\?’: override-expire
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘get_video\?’: ignore-no-cache
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘get_video\?’: ignore-private
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘videoplayback\?’: override-expire
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘videoplayback\?’: ignore-no-cache
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘videoplayback\?’: ignore-private
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘videodownload\?’: override-expire
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘videodownload\?’: ignore-no-cache
2010/08/05 15:24:02| parse_refreshpattern: Unknown option ‘videodownload\?’: ignore-private
August 5th, 2010 at 6:33 pm
Pregunta,, funciona con squid 3.1 ?? este store ?
si es asi ya migro a squid 3.1
gracias
August 6th, 2010 at 6:45 pm
Me parece muy buen aporte, pero tengo instalado Ferdora 12 con Squid 3.1 y no me funciona, tendras la solucion para esta version. Gracias
August 19th, 2010 at 2:16 pm
Hola Alejandro,, tienes Mail, donde podamos hablar, de negocios,, necesito algunas asesorias, para implementar en mi squid..
Mandame tu mail a servitecno@gmail.com
Graciass