-
01-10-2019 - |
質問
HTML、JS、PHP、CSSにGZIPを使用している人は誰でも、これをサーバーに実装する方法を説明できますか?
私が知りたいのは:
- .htaccessで何を書く必要がありますか?
- どのソースからダウンロードする必要がありますか?
- 最も重要:それは違いを生み、報われますか?
解決
httpd.confでMOD_DEFLATEまたはMOD_GZIPを有効にする必要があります。その後、次の行を構成または.htaccessファイルに配置する必要があります。
Apache 1.3.x:
mod_gzip_on Yes
mod_gzip_item_include mime ^application/x-javascript$
mod_gzip_item_include mime ^application/json$
mod_gzip_item_include mime ^text/.*$
mod_gzip_item_include file \.html$
mod_gzip_item_include file \.php$
mod_gzip_item_include file \.js$
mod_gzip_item_include file \.css$
mod_gzip_item_include file \.txt$
mod_gzip_item_include file \.xml$
mod_gzip_item_include file \.json$
Header append Vary Accept-Encoding
Apache 2.0
AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-javascript application/json
Header append Vary Accept-Encoding
他のヒント
それは報われます:HTMLページは、明確なテキストであるため、多くの場合、最大90パーセントで大量に圧縮することができます。
ただし、Gzippingは通常、セントラルサーバーの構成でアクティブにする必要がありますが、 .htaccess
.
共有ホスティングサーバーを使用している場合、すでにインストールされてオンになっている可能性があります。
FireBugの「ネット」タブのようなものを使用して調べます。サーバー上のページにリクエストを行い、[ファイル]ビューを[開く]をクリックします。応答ヘッダーが含まれている場合 Content-Encoding: gzip
, 、Gzippingはすでにアクティブになっています。
それは報われますか?シナリオがあり、圧縮がオンになってさらに遅くなります。
圧縮をオンにすると、ApacheはすべてのPHPが完了するまで、送信する前に待つ必要があります どれか クライアントへのコンテンツ。圧縮がオフになると、Apacheは最初のエコーステートメントで送信を開始できました。
このため、クライアントはヘッドセクションを高速に取得できます。ここで、スタイルシートとJSがロードしてリクエストできる情報を取得し、PHPスクリプトの残りの部分がまだHTMLを生成しています。
したがって、PHPが実行に時間がかかる場合、圧縮をアクティブにしないでください。
それでも、圧縮のポジティブ効果がたくさんあります。