Database JUNKY

MySQL,MariaDBを中心としたブログです

リバースプロキシ:squid.conf メモ

squid.conf のパラメタが多すぎて、わからなくなってきたので、メモがてら変更を加えた部分を記載します。

WELCOME TO SQUID 2.6.STABLE21

# #

This is the default Squid configuration file. You may wish

to look at the Squid home page (http://www.squid-cache.org/)

for the FAQ and other documentation.

#

The default Squid config file shows what the defaults for

various options happen to be.  If you don't need to change the

default, you shouldn't uncomment the line.  Doing so may cause

run-time problems.  In some cases "none" refers to no default

setting at all, while in other cases it refers to a valid

option   the comments for that keyword indicate if this is the

case.

#

  119.XX.XX.0 さん、さようなら、そのほかの人、こんにちわ

acl deny_networks src 119.XX.XX.0/24 http_access deny deny_networks

http_access allow all

リバースプロキシに設定(バーチャルホストも使っているよ)

http_port 192.168.1.51:80 accel defaultsite=192.168.1.52 vhost

ベーシック認証を通過させる

cache_peer 192.168.1.52 parent 80 0 no-query originserver login=PASS

cache_mem 8 MB

よくわかりませんが、squidが使うメモリは、指定の3倍程度になるらしいので、128にしました

cache_mem 128 MB

Default:

maximum_object_size_in_memory 8 KB

キャッシュするオブジェクトの最大サイズを指定できます

maximum_object_size_in_memory 1024 KB

Default:

cache_dir ufs /var/spool/squid 100 16 256

cachedir [ファイルシステムタイプ] [キャッシュディレクトリ] [サイズ] [レベル1] [レベル2]

[ファイルシステムタイプ]

デフォルトでufsが設定されています。Linuxで利用する場合は変更する必要はありません。

#

[キャッシュディレクトリ]

キャッシュファイルを作成するディレクトリを指定します。

[サイズ]

キャッシュファイルのサイズをMBで指定します。利用環境に応じて変更してください。

[レベル1]

ディレクトリを分割するサブディレクトリの数を指定します。[サイズ]を変更した場合は、変更した比率に合わせて分割するディレクトリ数を変更します。

[レベル2]

レベル1で分割したディレクトリをさらにいくつのディレクトリに分割するか指定します。デフォルトは256で特に変更する必要はありません。

なお、キャッシュディレクトリを複数のディスクに分散させる事により高速化が可能です。

その場合は、cache_dirディレクティブを複数記載します。

cache_dir ufs /var/spool/squid 600 16 256

access_log /var/log/squid/access.log squid

apache 互換でのログ形式に変更します

access_log /var/log/squid/access.log auto

logfile_rotate 0

6つの旧ファイルを残しながらローテーションします

logfile_rotate 7

Default:

emulate_httpd_log off

apache互換ログへエミュレートします

emulate_httpd_log on

こんなところかな?ちなみに、squid、モーレツにログをはくので、分析には良いですが、ローテートしないとかなりきついので、定期的に、サーバから

/usr/sbin/squid -k rotate

を実行したほうがよさそう。

crontab -e

0 0 * * *  /usr/sbin/squid -k rotate