溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

影響access.log的配置指令有哪些

發(fā)布時間:2021-11-16 16:45:33 來源:億速云 閱讀:163 作者:小新 欄目:云計算

這篇文章給大家分享的是有關(guān)影響access.log的配置指令有哪些的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

影響access.log的10個配置指令
1 log_icp_queries
該指令默認激活,導致squid記錄所有的ICP查詢。假如運行了一個繁忙的父cache,這點可能讓
access.log文件變得巨大。為了節(jié)省磁盤空間,可禁止該指令:
log_icp_queries off
2 emulate_httpd_log
access.log文件有2種格式:普通格式和原始格式。普通格式就如同大部分HTTP服務器(如Apache)
的日志格式一樣。它包含的信息少于Squid的原始格式。然而,假如運行Squid在代理人模式下(見
15章),你可能想要普通日志文件格式。普通格式或許也對你現(xiàn)有的日志文件分析工具有用。使用該
指令來激活普通格式:
emulate_httpd_log on
3 log_mime_hdrs
使用log_mime_hdrs讓squid記錄HTTP請求和響應的頭部:
log_mime_headers on
在激活時,squid追加請求和響應頭部到access.log。這會在每行增加2個域。每個域都以方括號引用
起來,便于分析。某些字符會被編碼來保證日志文件可讀。Table 13-2顯示了這些編碼方案。
Table 13-2. Character encoding rules for HTTP headers in access.log
Character
Encoding
Newline
\n
Carriage return
\r
Backslash
\\
[
%5b
]
%5d
%
%25
ASCII 0-31
%xx (hexadecimal value)
ASCII 127-255
%xx (hexadecimal value)
4 log_fqdn
Squid默認把客戶端IP地址放在access.log里。也可以記錄可用的主機名,激活如下指令:
log_fqdn on
這點讓Squid在接受到請求時,對客戶端的地址發(fā)起反向DNS查詢。假如在請求完成時查到了主機名,
Squid就將它放在第3域。
5 ident_lookup_access
該訪問規(guī)則列表決定Squid是否對客戶端的TCP連接發(fā)起RFC 1413身份查詢。默認情況下,Squid不
會發(fā)布身份查詢。為了激活這點,簡單的增加一個或多個規(guī)則:
acl All src 0/0
ident_lookup_access allow All
假如在請求完成時查到了答案,Squid將其放在第8域。假如同時使用了HTTP驗證,從驗證得到的用
戶名會取代身份查詢答案。
6 log_ip_on_direct
當Squid轉(zhuǎn)發(fā)cache丟失到原始服務器時,它在第9域記錄原始服務器的IP地址??梢越惯@個指令,
以便squid記錄主機名:
log_ip_on_direct off
在此情形下,主機名來自于URI。假如URI包含了IP地址,Squid不會將其轉(zhuǎn)換為主機名。
7 client_netmask
該指令存在主要是為了保護用戶的隱私。不同于記錄完整的IP地址,你也可以掩蓋一些位。例如:
client_netmask 255.255.255.0
在此設(shè)置下,access.log里的所有客戶端IP地址的最后一個八位組是0:
1066036246.918 35 163.11.255.0 TCP_IMS_HIT/304 266 GET http://..
8 strip_query_terms
該指令是另一個隱私保護功能。在記錄請求前,Squid刪除了查詢條件。假如日志文件不幸落入壞人之
手,他們不會找到任何用戶名和密碼。當該指令激活時,在問號(?)之后的所有字節(jié)被刪除。例如,某
個URI如下:
http://auto.search.msn.com/response.asp?MT=www.kim o.com.yw&srch=3&prov=&utf8
會被記錄為:
http://auto.search.msn.com/response.asp?
.9 uri_whitespace
早前我提到過出現(xiàn)在某些URI里的空格字符的問題。RFC申明URI必須不包括空格字符,但在實際中情
況并非如此。uri_whitespace指令指明Squid如何處理這種情況。允許的設(shè)置是:strip (default),
deny, allow, encode, 和chop。在這些設(shè)置里,strip,encode和chop保證URI域不包含任何空格
字符(空格字符會給access.log增加多余的域)。
allow設(shè)置允許請求不加修改的通過Squid。它很可能會給重定向器和日志文件解析器帶來麻煩。與之
相反的是deny設(shè)置,它導致Squid拒絕這種請求。用戶會接受到錯誤消息,但請求仍帶著空格字符被
記錄到access.log。
假如設(shè)置為encode,Squid將空格字符按RFC 1738規(guī)范來編碼。這點其實用戶代理應該先做到。
chop設(shè)置導致Squid把第一個空格字符后的URI都截斷。
默認設(shè)置是strip,它讓Squid從URI里移除空格字符。這確保日志文件解析器和重定向器工作正常,但
可能會破壞某些事情,例如不正確編碼的搜索引擎查詢。
10 buffered_logs
默認情況下,Squid禁止寫cache.log文件的buffer,這允許你運行tail -f 命令實時的觀察日志文件變
化。假如你認為這點導致不必要的性能開銷,就可以禁用buffer:
buffered_logs off
然而,除非以完整debug模式運行Squid,這點可能無關(guān)緊要。注意該選項僅僅影響cache.log。其他
的日志文件總使用非緩沖的寫方式。
很抱歉,因為您在網(wǎng)易相冊發(fā)布了違規(guī)信息,賬號被屏蔽。被屏蔽期間他人無法訪問您的相冊。

感謝各位的閱讀!關(guān)于“影響access.log的配置指令有哪些”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI