SQUID FOR WINDOWS構成

6742 ワード

本明細書においてSQUIDは172.2.0.65.201のマシン上に配置する、応用WEB SERVER IPは172.0.65.2003であり、そのうちSQUIDは201上の80ポートでリスニングされ、テストクライアントマシンは172.2.0.65.231であり、squidである.confの#はコメントを表すので、ある設定を開くには、前の#を削除する必要があります.TAGタグは、各機能項目の設定を表します.
1、ダウンロード
SQUID FOR WINDOWSをダウンロードします(私が使用しているバージョンはSquid 2.7.1STABLE 6ですが、各バージョンの構成が少し異なる場合がありますので、ご注意ください)
2、取り付け
SQUIDをc:squidに解凍します(もちろん他のディスクの下に解凍することもできます)
 
3、ディスクキャッシュとログディレクトリの作成
デフォルトでは、d:squidvarディレクトリを作成し、varディレクトリの下にlogsとcacheディレクトリを作成します.logsディレクトリはログの保存に使用され、cacheディレクトリはハードディスクキャッシュデータの保存に使用されます.
4、キャッシュ目操作権限の確立
キャプチャしたデータをキャッシュディレクトリに格納できるように、squidAppのようなシステムアカウントを確立し、通常のユーザーグループに属するように、d:squidにそのユーザーの読み書き権限を付与すればよい.
   
5、ファイルの変更
c:squidetcはSQUIDの構成情報の格納先です.安全を確保するために、プロファイルを変更する前にバックアップし、squid.conf.defaultをsquidに変更します.conf,
   mime.conf.defaultをmimeに変更します.conf ,cachemgr.conf.defaultをcachemgrに変更conf
 
6.SQUIDの構成
SQUIDに対する針のほとんどはsquidである.confでは、本明細書で使用する環境は以下の通りです.
次のアクセス制御をオンにします.
   acl all src all
   acl manager proto cache_object
   acl localhost src 127.0.0.1/32
   acl to_localhost dst 127.0.0.0/8
   acl localnet src 172.16.65.231/255.255.0.0  

アクセスポートを開く
   acl SSL_ports port 443
   acl Safe_ports port 80 # http
   acl Safe_ports port 21 # ftp
   acl Safe_ports port 443 # https
   acl Safe_ports port 70 # gopher
   acl Safe_ports port 210 # wais
   acl Safe_ports port 1025-65535 # unregistered ports
   acl Safe_ports port 280 # http-mgmt
   acl Safe_ports port 488 # gss-http
   acl Safe_ports port 591 # filemaker
   acl Safe_ports port 777 # multiling http
   acl CONNECT method CONNECT

アクセス制御をオンにするには、必ず順番に注意してください
   http_access allow manager localhost
   http_access deny manager
   http_access deny !Safe_ports
   http_access deny CONNECT !SSL_ports
   http_access allow all
   http_access allow localnet
   http_access deny all

SQUIDが80ポートでリスニングされることを指定し、vhostが加速モードを使用することを指定します.
   http_port 80 vhost 

172.2.0.65.2003バックグラウンドWEB SERVER、parentは親ノードを指し、80はバックグラウンドサイトのポートを指し、0 ICPサービスポート、no-query originserverはキャッシュを取得する時のオプション
   cache_peer 172.20.65.203       parent    80  0  no-query  originserver
 
キャッシュ設定
   maximum_object_size_in_memory 1024 KB
   cache_dir ufs d:/squid/var/cache 1024 16 256  
   maximum_object_size 4096 KB
   cache_swap_low 90
   cache_swap_high 95

ログの設定
   access_log d:/squid/var/logs/access.log squid  
   cache_log d:/squid/var/logs/cache.log
   cache_store_log d:/squid/var/logs/store.log
   emulate_httpd_log on

ページキャッシュの内容の制御
   refresh_pattern ^ftp: 1440 20% 10080
   refresh_pattern ^gopher: 1440 0% 1440
   refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
   refresh_pattern . 0 20% 4320
   refresh_pattern -i \.css$ 20 50% 120 reload-into-ims
   refresh_pattern -i \.xml$ 20 50% 120 reload-into-ims
   refresh_pattern -i \.html$ 20 90% 120 reload-into-ims
   refresh_pattern -i \.jpg$ 20 90% 120 reload-into-ims
   refresh_pattern -i \.png$ 20 90% 120 reload-into-ims
   refresh_pattern -i \.gif$ 20 90% 120 ignore-reload
   refresh_pattern -i \.js$ 20 90% 120  reload-into-ims
   refresh_pattern -i \.htm$ 20 90% 120 reload-into-ims

メールボックスの設定
   cache_mgr webmaster_breeze
 
ローカルホストファイルの設定
 hosts_file c:/windows/system32/drivers/etc/hosts
 
7、インストールサービス
squidをサービス、コマンドフォーマットにインストールします.
squid -i [-f configfile] [-n servicename], c:\squid\sbin\squid -i -n Squid_Proxy
 
8、キャッシュディレクトリの初期化
   c:\squid\sbin\squid -z 
 
9、Squidを起動するProxyサービス
サービスを実行します.mscサービスウィンドウを開き、Squid_を選択Proxyサービスは、起動プロセスでエラーが90%発生した場合、プロファイルに問題が発生します.
10、squidコマンド
   squid -k reconfigure  //  
   squid -k rotate       //  
   squid -k shutdown     //stop squid 
   squid -dx  , 
詳細は、「ドキュメント」を参照してください.
 
四、SQUIDテスト
機械を探してテストし、accessを確認します.ログ、TCP_が表示された場合DENYの情報は、配置が正しくないことが多い.以下のような情報TCP_MEM_HIT/200は、SQUIDが動作していることを示しており、この要求はSQUID実行マシンのメモリから応答している.
######################
共通デバッグコマンド
######################
1、squidを初期化します.confで構成されたcacheディレクトリ
#squid/sbin/squid-z//初めてsquidサービスを開始するときは、このコマンドを入力する必要があります.
エラーメッセージがある場合は、cacheディレクトリの権限を確認してください.
2、あなたのsquid.confエラー、すなわちsquidを検証する.confの構文と構成.#squid/sbin/squid -k parse
もしsquid.confには文法や構成エラーがあります.ここでヒントが返されます.返さなければ、おめでとうございます.squidを起動してみてください.
3、フロントでsquidを起動し、起動プロセスを出力する.squid/sbin/squid -N -d1
ready to server requesに着いたら、おめでとうございます.起動に成功しました.
その後ctrl+c、squidを停止し、後で実行する方法で起動します.
4、squidを起動してバックグラウンドで実行する.squid/sbin/squid -s
このときps−Aでシステムプロセスを見ることができ,2つのsquidプロセスを見ることができる.
5、squid#squid/sbin/squid-k shutdownを停止する
これは説明しなくてもいいでしょう.
6、修正したsquidを再起動する.conf
#squid/sbin/squid -k reconfigure
この推定は多くの場合、あなたの構成が気に入らないことに気づいたら、いつでもsquidを変更することができます.conf、そしてあなたのsquidを忘れないでください.confが間違っていて、この命令を実行すると、実行中のsquidをあなたのsquidに再従わせることができます.confで実行します.
7、squidをシステム起動項目編集/etc/rcに追加する.d/rc.local
以下のように追加:/usr/local/squid/sbin/squid-s
もちろん、誰もがこのような起動方法が好きではありません.あなたは最も慣れた方法を使うことができます.あるいはそれをサービスとしてインストールします.
その他
1、cacheキャッシュディレクトリの権限を変更します.#chown -R squid:squid/home/cache
私のcacheキャッシュディレクトリは/home/cacheで、squid実行ユーザーとユーザーグループはsquid、squidです.
2、squidログディレクトリを変更する権限#chown-R squid:squid/usr/local/squid/var/logs
このステップは、squidを使用する各ユーザに適しているわけではない.squidにこのディレクトリで書き込みを行う権限を与えることを意味します.
例えばaccessを生成する.log cache.log store.log
3、あなたのログドキュメントを表示します.more/usr/local/squid/var/logs/access.log | grep TCP_MEM_HIT
このコマンドは、squidの実行中にsquidによってメモリにキャッシュされ、アクセスユーザに返されるファイルが表示されます.
#more/usr/local/squid/var/logs/access.log | grep TCP_HIT
このコマンドは、squidの実行中に、squidによってcacheディレクトリにキャッシュされ、アクセスユーザに返されるファイルが表示されます.
#more/usr/local/squid/var/logs/access.log | grep TCP_MISS
このコマンドは、squidの実行中に、squidによってキャッシュされず、元のサーバに再取得され、アクセスユーザに返されるファイルがあることを示します.
TCP_についてXXXXなどのパラメータと代表の情報は、彭勇華『squid中国語権威ガイド』13.2.1章を参照してください.
もちろん、この例の青い文字は、ドメイン名などの他のパラメータに変更することができ、accessも見ることができます.logのドメイン名に関する行.
4、squid-k rotate squidのログファイル/var/log/squid、Squidプロキシサーバーのログファイルを入れ替える
の成長速度は驚くべきもので、ペナルティーキックがディスク空間を満たしやすく、システムが正常に動作しなくなり、ハングアップすることもあります.ログファイルの増加が速すぎる問題を解決するために、squidは「交代」の方法を採用した.squid.confではlogfile_rotateは、次のようなファイルの交代数を設定します.
logfile_rotate 10では、ローテーションの作業は一般的にcrontabタイマで周期的なログローテーションを完了し、例えば毎週6日午前2:00にログローテーションを行うと、crontab-e
0 2 * * 6 squid -k rotate
小贴士:Squidのデフォルトのエラーメッセージは英語で、英語が下手なユーザーにとって、本当に不便です./etc/squid/squid.confには次のように追加されます.
error_directory/usr/share/squid/errors/Simplify_Chineseは中国語のエラーメッセージを表示できます.