天天看點

squid access.log中Squid傳回給用戶端的結果編碼

Squid發現請求資源的貌似新鮮的拷貝,并将其立即發送到用戶端。

Squid沒有請求資源的cache拷貝。

Squid發現請求資源的貌似陳舊的拷貝,并發送确認請求到原始伺服器。原始伺服器傳回304(未修改)響應,訓示squid的拷貝仍舊是新鮮的。

Squid發現請求資源的貌似陳舊的拷貝,并發送确認請求到原始伺服器。然而,原始伺服器響應失敗,或者傳回的響應Squid不能了解。在此情形下,squid發送現有cache拷貝(很可能是陳舊的)到用戶端。

Squid發現請求資源的貌似陳舊的拷貝,并發送确認請求到原始伺服器。原始伺服器響應新的内容,訓示這個cache拷貝确實是陳舊的。

Squid發現了請求資源的拷貝,但用戶端的請求包含了Cache-Control: no-cache指令。Squid轉發用戶端的請求到原始伺服器,強迫cache确認。

用戶端發送确認請求,Squid發現更近來的、貌似新鮮的請求資源的拷貝。Squid發送更新的内容到用戶端,而不聯系原始伺服器。

Squid發現請求資源的有效拷貝,但從磁盤裝載它失敗。這時squid發送請求到原始伺服器,就如同這是個cache丢失一樣。

在對原始伺服器的請求導緻HTTP錯誤時,Squid也會cache這個響應。在短時間内對這些資源的重複請求,導緻了否命中。 negative_ttl指令控制這些錯誤被cache的時間數量。請注意這些錯誤隻在記憶體cache,不會寫往磁盤。下列HTTP狀态碼可能導緻否定 cache(也遵循于其他限制): 204, 305, 400, 403, 404, 405, 414, 500, 501, 502, 503, 504。

Squid在記憶體cache裡發現請求資源的有效拷貝,并将其立即發送到用戶端。注意這點并非精确的呈現了所有從記憶體服務的響應。例如,某些cache在記憶體裡,但要求确認的響應,會以TCP_REFRESH_HIT, TCP_REFRESH_MISS等形式記錄。

因為http_access或http_reply_access規則,用戶端的請求被拒絕了。注意被http_access拒絕的請求在第9域的值是NONE/-,然而被http_reply_access拒絕的請求,在相應地方有一個有效值。

當offline_mode激活時,Squid對任何cache響應傳回cache命中,而不用考慮它的新鮮程度。

重定向程式告訴Squid産生一個HTTP重定向到新的URI(見11.1節)。正常的,Squid不會記錄這些重定向。假如要這樣做,必須在編譯squid前,手工定義LOG_TCP_REDIRECTS預處理指令。

無分類的結果用于特定錯誤,例如無效主機名。

相應于ICP查詢,下列标簽可能出現在access.log檔案的第四域。

Squid在cache裡發現請求資源的貌似新鮮的拷貝。

Squid沒有在cache裡發現請求資源的貌似新鮮的拷貝。假如同一目标通過HTTP請求,就可能是個cache丢失。請對比UDP_MISS_NOFETCH。

跟UDP_MISS類似,不同的是這裡也訓示了Squid不願去處理相應的HTTP請求。假如使用了-Y指令行選項,Squid在啟動并編譯其記憶體索引時,會傳回這個标簽而不是UDP_MISS。

因為icp_access規則,ICP查詢被拒絕。假如超過95%的到某用戶端的ICP響應是UDP_DENIED,并且用戶端資料庫激活了(見附錄A),Squid在1小時内,停止發送任何ICP響應到該用戶端。若這點發生,你也可在cache.log裡見到一個警告。

Squid接受到無效查詢(例如截斷的消息、無效協定版本、URI裡的空格等)。Squid發送UDP_INVALID響應到用戶端。

Table 13-1列出了數字HTTP響應CODE和理由短句。注意Squid和其他HTTP用戶端僅僅關注這些數字值。理由短句是純解釋性的,不會影響響應的意 義。對每個狀态碼,也提供了一個到RFC 2616的具體節的索引。注意狀态碼0和600是squid使用的非标準的值,不會在RFC裡提到。

Table 13-1. HTTP response status codes

Code

Reason phrase

RFC 2616 section

No Response Received (Squid-specific)

N/A

1xx

Informational

10.1

100

Continue

10.1.1

101

Switching Protocols

10.1.2

2xx

Successful

10.2

200

OK

10.2.1

201

Created

10.2.2

202

Accepted

10.2.3

203

Non-Authoritative Information

10.2.4

204

No Content

10.2.5

205

Reset Content

10.2.6

206

Partial Content

10.2.7

3xx

Redirection

10.3

300

Multiple Choices

10.3.1

301

Moved Permanently

10.3.2

302

Found

10.3.3

303

See Other

10.3.4

304

Not Modified

10.3.5

305

Use Proxy

10.3.6

306

(Unused)

10.3.7

307

Temporary Redirect

10.3.8

4xx

Client Error

10.4

400

Bad Request

10.4.1

401

Unauthorized

10.4.2

402

Payment Required

10.4.3

403

Forbidden

10.4.4

404

Not Found

10.4.5

405

Method Not Allowed

10.4.6

406

Not Acceptable

10.4.7

407

Proxy Authentication Required

10.4.8

408

Request Timeout

10.4.9

409

Conflict

10.4.10

410

Gone

10.4.11

411

Length Required

10.4.12

412

Precondition Failed

10.4.13

413

Request Entity Too Large

10.4.14

414

Request-URI Too Long

10.4.15

415

Unsupported Media Type

10.4.16

416

Requested Range Not Satisfiable

10.4.17

417

Expectation Failed

10.4.18

5xx

Server Error

10.5

500

Internal Server Error

10.5.1

501

Not Implemented

10.5.2

502

Bad Gateway

10.5.3

503

Service Unavailable

10.5.4

504

Gateway Timeout

10.5.5

505

HTTP Version Not Supported

10.5.6

6xx

Proxy Error

600

Unparseable Response Headers (Squid-specific)

本文轉自神ge 51CTO部落格,原文連結:http://blog.51cto.com/12218412/1869011