1896
Commentaire: cache mémoire à laisser au minimum par défaut
|
2742
contexte légal
|
Texte supprimé. | Texte ajouté. |
Ligne 7: | Ligne 7: |
`extension_methods REPORT MERGE MKACTIVITY CHECKOUT` | `extension_methods REPORT MERGE MKACTIVITY CHECKOUT PROPFIND` |
Ligne 11: | Ligne 11: |
== Interception et redirection de requêtes vers un miroir local == |
|
Ligne 12: | Ligne 14: |
acl url_rewrite dstdomain security.ubuntu.com archive.ubuntu.com .archive.ubuntu.com | acl url_rewrite dstdomain .ubuntu.com .medibuntu.org .debian.org www.backports.org apt.hanoilug.org apt.auf.org |
Ligne 15: | Ligne 17: |
url_rewrite_children 5 | |
Ligne 18: | Ligne 19: |
Exemple de script de redirection ('''mauvais''' mais fonctionnel, fait à la vas-vite pour une urgence...) : {{{ | Exemple de script de redirection ('''mauvais''' mais fonctionnel, fait à la vas-vite pour une urgence...) : {{{#!shell |
Ligne 20: | Ligne 21: |
# /usr/local/sbin/squid-redirector, Progfou, 2008-01-14 # À refaire en Perl ou Python, un jour... |
# /usr/local/sbin/squid-redirector # Auteur : Progfou <jean-christophe.andre@auf.org> # Licence : Domaine public # Création : 2008-01-14 # Dépendances : libwww-perl (pour la commande HEAD) # # TODO: À refaire en Perl ou Python, un jour... |
Ligne 27: | Ligne 33: |
# Miroirs au 2008-01-14 au CNF de Hanoï : # - architecture i386 (pas de source) # - sections main, restricted, universe et multiverse # - security et updates pour dapper, feisty et gutsy # - archive et backports pour dapper et gutsy # |
MIRROR="cnf.vn.refer.org/mirror" |
Ligne 35: | Ligne 36: |
URL2="${URL/:\/\/??.archive.ubuntu.com\/ubuntu/://cnf.vn.refer.org/mirror/ubuntu/archive}" [ "$URL" = "$URL2" ] && URL2="${URL/:\/\/security.ubuntu.com\/ubuntu/://cnf.vn.refer.org/mirror/ubuntu/security}" if [ "$URL" != "$URL2" ] && HEAD "$URL2" > /dev/null |
URL2="${URL/:\/\/apt.auf.org\//://cnf.vn.refer.org/mirror/auf/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/apt.hanoilug.org\/ubuntu\//://${MIRROR}/ubuntu/hanoilug/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*archive.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*packages.medibuntu.org\/ubuntu\//://${MIRROR}/ubuntu/medibuntu/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\/debian-security\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/volatile.debian.org\/debian-volatile\//://${MIRROR}/debian/volatile/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/ftp*.debian.org\/debian\//://${MIRROR}/debian/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/www.backports.org\/debian\//://${MIRROR}/debian/backports/}" if [ "$URL2" != "$URL" ] && HEAD "$URL2" > /dev/null |
Cette page décrira notre utilisation de Squid à l'AUF.
Trucs et astuces (en attendant une vraie doc...)
laisser la valeur cache_mem à 8 MB, l'augmenter n'augmentera pas les performances, au contraire
ajouter ceci pour supporter les accès Subversion via HTTP :
extension_methods REPORT MERGE MKACTIVITY CHECKOUT PROPFIND
- corriger la taille maximale pour les objets mis dans le cache (4 Mo par défaut) :
maximum_object_size 10 MB (valeur arbitraire)
Interception et redirection de requêtes vers un miroir local
Exemple d'options pour intercepter et rediriger les téléchargements de paquets Ubuntu vers son miroir local :
acl url_rewrite dstdomain .ubuntu.com .medibuntu.org .debian.org www.backports.org apt.hanoilug.org apt.auf.org url_rewrite_access allow url_rewrite url_rewrite_program /usr/local/sbin/squid-redirector
Exemple de script de redirection (mauvais mais fonctionnel, fait à la vas-vite pour une urgence...) :
#!/bin/bash # /usr/local/sbin/squid-redirector # Auteur : Progfou <jean-christophe.andre@auf.org> # Licence : Domaine public # Création : 2008-01-14 # Dépendances : libwww-perl (pour la commande HEAD) # # TODO: À refaire en Perl ou Python, un jour... # # URL <SP> client_ip "/" fqdn <SP> user <SP> method <SP> urlgroup <NL> # # ATTENTION : le miroir est incomplet => ne pas tout rediriger bêtement !! # MIRROR="cnf.vn.refer.org/mirror" while read URL CLIENT USER METHOD GROUP do URL2="${URL/:\/\/apt.auf.org\//://cnf.vn.refer.org/mirror/auf/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/apt.hanoilug.org\/ubuntu\//://${MIRROR}/ubuntu/hanoilug/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*archive.ubuntu.com\/ubuntu\//://${MIRROR}/ubuntu/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/*packages.medibuntu.org\/ubuntu\//://${MIRROR}/ubuntu/medibuntu/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\/debian-security\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/security.debian.org\//://${MIRROR}/debian/security/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/volatile.debian.org\/debian-volatile\//://${MIRROR}/debian/volatile/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/ftp*.debian.org\/debian\//://${MIRROR}/debian/archive/}" [ "$URL2" = "$URL" ] && URL2="${URL/:\/\/www.backports.org\/debian\//://${MIRROR}/debian/backports/}" if [ "$URL2" != "$URL" ] && HEAD "$URL2" > /dev/null then echo "$URL2" else echo "$URL" fi done exit 0