Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
utilisateurs:hypathie:tutos:proxy-transparent [18/10/2014 07:21] Hypathie [Introduction] |
utilisateurs:hypathie:tutos:proxy-transparent [18/10/2014 08:41] Hypathie [Configuration de squid comme proxy transparent] |
||
---|---|---|---|
Ligne 171: | Ligne 171: | ||
#hierarchy_stoplist cgi-bin ? | #hierarchy_stoplist cgi-bin ? | ||
+ | |||
+ | cache allow LocalNet | ||
+ | #cache deny QUERY | ||
# MEMORY CACHE OPTIONS | # MEMORY CACHE OPTIONS | ||
Ligne 294: | Ligne 297: | ||
>#Default: | >#Default: | ||
>''# maximum_object_size 4096 KB'' | >''# maximum_object_size 4096 KB'' | ||
+ | >''cache'' : pour déterminer l'utilisation du cache\\ ''cache allow LocalNet'' ; elle doit remplacer ''no_cache'' | ||
<note important> | <note important> | ||
Ligne 386: | Ligne 390: | ||
</code> | </code> | ||
- | <note tip> | + | ====Vérifier la cache ==== |
- | **__Détail sur /var/log/squid3/access.log__ :**\\ | + | Ci-dessus, nous avons observé que les connexions passaient par le proxy.\\ |
- | On y retrouve tous les accès faits au serveur, c’est-à-dire toutes les requêtes HTTP reçues et la façon dont elles ont été traitées. Le format de ce fichier est paramétrable via l’option access_log du fichier squid.conf. Le format natif d’une entrée de log est le suivant :\\ **''time elapsed remotehost code/status bytes method URL rfc931 peerstatus/peerhost type''**\\ | + | Pour vérifier que squid sert au client une page de son cache, il faut visiter le même URL plusieurs fois. |
+ | La 1ère fois on a normalement dans /var/log/squid3/access.log, ''TCP_MISS'', mais après on doit obtenir ''TCP_HIT''. | ||
+ | * TCP_MISS : L'objet demandé n'est pas dans le cache. | ||
+ | * TCP_HIT : Une copie valide de l'objet demandé était dans le cache. | ||
- | > **''time''** : le temps UTC (en ms) auquel la requête a été reçue. | + | On peut trouver d'autres indications : |
+ | * TCP_REFRESH_HIT : L'objet demandé a été mis en cache mais obsolète (ICM -> 304). | ||
+ | * TCP_REF_FAIL_HIT : L'objet demandé a été mis en cache mais il obsolète ; la requête IMS a échoué mais l'objet a été livré. | ||
+ | * TCP_REFRESH_MISS : L'objet demandé a été mis en cache mais était obsolète. La requête IMS retourné le nouveau contenu. | ||
+ | * TCP_CLIENT_REFRESH_MISS : Le client a émis une certaine demande de cache en même temps que la demande. Ainsi, le cache doit extraire à nouveau l'objet. | ||
+ | * TCP_IMS_HIT : Le client a émis une demande IMS pour un objet qui est nouvellement dans le cache. | ||
+ | * TCP_NEGATIVE_HIT :Demande d'un objet mis en cache négative, par exemple "404 Not Found" | ||
+ | * TCP_MEM_HIT : Une copie valide de l'objet demandé a été mis dans la mémoire du cache, évitant ainsi les accès disque. | ||
+ | * TCP_DENIED : Accès a été refusé pour cette demande. | ||
+ | * TCP_OFFLINE_HIT : L'objet demandé a été récupéré à partir du cache en mode déconnecté. Voir "offline_mode" dans le fichier squid.conf. | ||
- | >**''elapsed''** : le temps de traitement par le serveur de la requête (en ms). Ce temps de traitement diffère selon le mode utilisé (connecté ou déconnecté) : | + | Se connecter plusieurs fois et tenter la commande : |
- | * Pour TCP, il s’agit du temps écoulé entre le moment où le serveur a reçu la requête et le moment où il a répondu au client. | + | <code root>cat /var/log/squid3/cache.log | grep TCP_HIT</code> |
- | * Pour UDP, il s’agit du temps calculé entre le moment où le serveur prévoit de répondre au client et le moment où il lui répond effectivement. | + | |
- | >**''remotehost''** : l’adresse IP du client. Cette donnée peut être cachée pour rendre les logs anonymes. | ||
- | |||
- | >**''code/status''** : le code résultat de la transaction. Ce champ est composé de deux entrées séparées par un slash : le code de statut de Squid et le code HTTP de la réponse du serveur d’origine. La plupart de ces codes sont détaillés plus bas. | ||
- | |||
- | >**''bytes''** : la taille de la donnée livrée au client. | ||
- | |||
- | >**''method''** : la méthode utilisée pour récupérer la ressource (GET, HEAD, etc.). | ||
- | |||
- | >**''URL''** : l’URL de la ressource demandée. | ||
- | |||
- | >**''rfc931''** : les informations utilisateurs (désactivé par défaut). | ||
- | |||
- | >**''hierarchy code''** : un code permettant de savoir comment la requête a été traitée. Ce code peut être suivi par l’adresse IP vers laquelle la requête a été redirigée. | ||
- | |||
- | >**''type''** : le type de contenu issu du header HTTP de la réponse (Les échanges ICP ne contiennent pas cette information). | ||
- | </note> | ||
====Vérifier le cache==== | ====Vérifier le cache==== | ||
Ligne 436: | Ligne 435: | ||
+ | <note tip> | ||
+ | **__Détail sur /var/log/squid3/access.log__ :**\\ | ||
+ | On y retrouve tous les accès faits au serveur, c’est-à-dire toutes les requêtes HTTP reçues et la façon dont elles ont été traitées. Le format de ce fichier est paramétrable via l’option access_log du fichier squid.conf. Le format natif d’une entrée de log est le suivant :\\ **''time elapsed remotehost code/status bytes method URL rfc931 peerstatus/peerhost type''**\\ | ||
+ | |||
+ | > **''time''** : le temps UTC (en ms) auquel la requête a été reçue. | ||
+ | |||
+ | >**''elapsed''** : le temps de traitement par le serveur de la requête (en ms). Ce temps de traitement diffère selon le mode utilisé (connecté ou déconnecté) : | ||
+ | |||
+ | * Pour TCP, il s’agit du temps écoulé entre le moment où le serveur a reçu la requête et le moment où il a répondu au client. | ||
+ | * Pour UDP, il s’agit du temps calculé entre le moment où le serveur prévoit de répondre au client et le moment où il lui répond effectivement. | ||
+ | |||
+ | >**''remotehost''** : l’adresse IP du client. Cette donnée peut être cachée pour rendre les logs anonymes. | ||
+ | |||
+ | >**''code/status''** : le code résultat de la transaction. Ce champ est composé de deux entrées séparées par un slash : le code de statut de Squid et le code HTTP de la réponse du serveur d’origine. La plupart de ces codes sont détaillés plus bas. | ||
+ | |||
+ | >**''bytes''** : la taille de la donnée livrée au client. | ||
+ | |||
+ | >**''method''** : la méthode utilisée pour récupérer la ressource (GET, HEAD, etc.). | ||
+ | |||
+ | >**''URL''** : l’URL de la ressource demandée. | ||
+ | |||
+ | >**''rfc931''** : les informations utilisateurs (désactivé par défaut). | ||
+ | |||
+ | >**''hierarchy code''** : un code permettant de savoir comment la requête a été traitée. Ce code peut être suivi par l’adresse IP vers laquelle la requête a été redirigée. | ||
+ | |||
+ | >**''type''** : le type de contenu issu du header HTTP de la réponse (Les échanges ICP ne contiennent pas cette information). | ||
+ | </note> | ||