Windows system >> Windowsの知識 >  >> コンピュータソフトウェアのチュートリアル >> サーバー技術 >> サーバーについて >> 静的ファイルに対するIIS 6およびIIS 7のgzip圧縮

静的ファイルに対するIIS 6およびIIS 7のgzip圧縮

  

では、なぜこの記事を書く必要があるのか​​をまず説明し、この「小さな問題」に巻き込まれました。まず、静的ファイルのgzip圧縮は、Webサイトのアクセス速度を向上させ、スパイダーの静的ページのクロールに要する時間を効果的に短縮するのに非常に役立ちますが、同時に動的ファイル圧縮のようにBaiduスパイダーを200 0 64クロールすることはありません。問題は、一方ではWebサイトの高速化がユーザーエクスペリエンスの向上に資する一方で、Googleの管理者ブログでは、今年のWebサイトの高速化がランキングの要因の1つであると述べています。 Guo Ping氏は、ブログ記事の読み込み速度がSEOの効果にどのように影響するかについて述べており、スパイダーがWebサイトをクロールする合計時間は一定期間固定されています。その後、クロール速度が上がり、クロールページ数が増え、逆もまた同様です。

gzipの結果を返す2つのホストの違いの最後の理由は、iisバージョンが私の推測したキャッシュフォルダ設定には小さすぎないことです。

実際、iis7はiis6よりも静的圧縮が優れています。大きな更新、IIS 6では、静的圧縮は別のスレッドで行われるため、HTTP要求を受信した後、ブラウザに送信された最初のHTMLバージョンは圧縮解除され、IIS 6が起動します。このファイルは別のスレッドを使用して圧縮され、圧縮バージョンは長期間圧縮ファイルのキャッシュフォルダに格納されます。以前は、IIS 6サーバーでは、圧縮が完了した後、静的ファイルの圧縮バージョンへのすべてのHTTPリクエストは、IIS 6がキャッシュフォルダーから直接圧縮バージョンを直接呼び出して、それをブラウザーに返していました。

しかし、IIS 7では、メインスレッドで圧縮が行われます。圧縮のコストを節約するために、IIS 7は、すべてのHTTP要求に対してユーザーが頻繁にアクセスするすべてのバージョンの静的ファイルを圧縮しません。保存、これが私が以前に最初に圧縮しなかった理由で、そして短期間のアクセスが再び圧縮されたバージョンを返したが、圧縮されていないバージョンの理由は数分で戻った。ここで、IIS 7は実際に圧縮バージョンをキャッシュフォルダに保存するのではなく、サーバーメモリに保存するか、一時的にキャッシュフォルダに保存してしばらくしてから削除することを理解できます。

また、IIS 7では、頻繁にアクセスされるファイルが定義されています圧縮規格に準拠した方法は、system.webServer /serverRuntime、frequentHitThreshold、frequentHitTimePeriodの2つの属性です。 FrequentHitTimePeriod期間中にIISがFrequentHitThresholdしきい値を超えて静的ファイルへのアクセスを受信した場合、IIS 7はIIS 6のように静的ファイルを圧縮し、圧縮バージョンを圧縮ファイルのキャッシュフォルダーに長時間保存します。中です。ユーザーがWebサイト上のファイルにアクセスし、そのファイルのキャッシュバージョンが既にcacheフォルダーに存在する場合、IIS7はFrequentHitThreshholdのロジックを判断せず、圧縮バージョンを直接ブラウザーに返します。

この設定は非常に面倒ですが、マイクロソフトからの公式の回答では、サーバーのパフォーマンスを向上させるために使用されています。 。 。したがって、IIS 7がIIS 6のように圧縮できるようにするには、2つの解決策があります。もちろん、両方ともdefaultHitThresholdとfrequentHitTimePeriodの2つの値を変更します。

まず、web.configに次の内容を追加します。たとえば、frequentHitThresholdを1に設定し、10分のFrequentHitTimePeriod変調を設定します。

< system.webServer>

< serverRuntime enabled = "true"

frequentHitThreshold = "1" < Br>

frequentHitTimePeriod = "00:10:00" />

< /system.webServer>

2番目の方法は、%windir%\\ system32 \\ inetsrv \\を開くことです。 Appcmd.exe、次にコマンドラインインターフェイスで次のコマンド文字列を入力してから入力します。

set config -section:system.webServer /serverRuntime -frequentHitThreshold:1

マイクロソフトの公式推奨事項ではありません急進的なアプローチは、FrequentHitThresholdを下げるのではなく、FrequentHitTimePeriodを増やすことです。ここでVPSを持っている友人のために、それを手動で設定することが推奨され、仮想ホストユーザーがそれを設定することができるならば、それはサービスプロバイダーに依存します。試してみましょう

Copyright © Windowsの知識 All Rights Reserved