6

YUI コンプレッサー プラグインを使用して、Java EE アプリケーション内で JS および CSS ファイルを圧縮および gzip しています。

ただし、HTML/JSP ファイル内でそれらを参照する方法が明確ではありません。

単純に .gzip 参照を使用すると、ブラウザーは明らかに不平を言います-

Resource interpreted as Script but transferred with MIME type application/x-gzip

現在の参照は次のようになります (上記のエラーがスローされます)。

<script type="text/javascript" src="/scripts/home.js.gz"></script>
4

3 に答える 3

1

それらを通常の .js および .css 拡張子で参照し、firebug または開発者ツールを介して検査して CSS および JS ファイルの応答ヘッダーをチェックすることにより、gzip が機能しているかどうかを確認します。

通常、gzip 圧縮は Web サーバー レベルで行われます。

Tomcat を使用している場合は、Tomcat インストールの conf/server.xml を開き、以下をコネクタ定義に追加できます。

<Connector port="8080" protocol="HTTP/1.1" redirectPort="8443" connectionTimeout="20000"
           compressableMimeType="text/html,text/xml,text/css,text/javascript,text/plain,application/javascript,application/json" 
           compression="2048"/>

Apache の場合は mod_gzip または mod_deflate を参照してください

これはルートの .htaccess ファイルに入りますが、httpd.conf にアクセスできる場合はそのほうがよいでしょう。

<ifModule mod_deflate.c>
<filesMatch "\.(js|css)$">
SetOutputFilter DEFLATE
</filesMatch>
</ifModule>
于 2012-07-14T21:06:51.513 に答える
0

すべての gzip を実行するように tomcat を構成することもできますが、jscssファイルなどの静的リソースを手動で圧縮し、サーバーにcss.gzまたはとして保存することをお勧めします。js.gzリクエストが来た時。

サーブレットの実装については、https://gist.github.com/suprememoocow/1570654を参照してください。

サーバーに gzip ファイルをキャッシュするメカニズムが組み込まれている場合は、それを使用できます。私の知る限り、Tomcat (7) にはまだこの機能がありません。

于 2014-05-17T10:14:15.323 に答える