3

だから、私は Yslow を持っていて、Expires ヘッダーを追加しようとしています。

だから私は.htaccess私のウェブサイトのルートにあります:

<ifModule mod_expires.c>
  ExpiresActive On
  ExpiresDefault "access plus 1 seconds"
  ExpiresByType text/html "access plus 1 seconds"
  ExpiresByType image/gif "access plus 2592000 seconds"
  ExpiresByType image/jpeg "access plus 2592000 seconds"
  ExpiresByType image/png "access plus 2592000 seconds"
  ExpiresByType text/css "access plus 604800 seconds"
  ExpiresByType text/javascript "access plus 216000 seconds"
  ExpiresByType application/x-javascript "access plus 216000 seconds"
  ExpiresByType application/javascript "access plus 216000 seconds"  
</ifModule>

<ifModule mod_headers.c>
  <filesMatch "\\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
    Header set Cache-Control "max-age=2592000, public"
  </filesMatch>
  <filesMatch "\\.(css)$">
    Header set Cache-Control "max-age=604800, public"
  </filesMatch>
  <filesMatch "\\.(js)$">
    Header set Cache-Control "max-age=216000, private"
  </filesMatch>
  <filesMatch "\\.(xml|txt)$">
    Header set Cache-Control "max-age=216000, public, must-revalidate"
  </filesMatch>
  <filesMatch "\\.(html|htm|php)$">
    Header set Cache-Control "max-age=1, private, must-revalidate"
  </filesMatch>
</ifModule>

mod_headers と mod_expires を有効にしました:

root@heisenberg:~# a2enmod headers
Module headers already enabled

root@heisenberg:~# a2enmod expires
Module expires already enabled

しかし、効果はありません。私は常に Yslow で "F" を持っています... そのために何ができますか? 私はすでにstackoverflowの他のトピックを読んでいます....

ありがとう !

4

1 に答える 1

0

同様の問題に直面したとき、次のリンクが Apache での Expires ヘッダーの設定に役立ちました。

http://www.simonwhatley.co.uk/how-to-set-an-expires-header-in-apache . ExpiresActive On before およびExpiresByTypeを httpd.conf のプロジェクト構成のドキュメント モジュール内に追加すると、うまくいきました

。多分これはあなたにも役立ちます。 また、ヘッダーに Cache-Control を追加する必要もありませんでした。それらはヘッダーに自動的に追加されました。私はプロではありませんが、これは私が観察したことです。

于 2014-01-07T04:30:15.150 に答える