1
ExpiresActive On
ExpiresDefault "access plus 1 day"
 [...]
RewriteRule .* index.php [L]

これは、mod_expiresと関連するRewriteRuleの設定です。彼らは完璧に機能します!しかし、キャッシュされない特定の URL があります。そのための正規表現は^/?nocache/. そのディレクトリ ( /nocache/) は物理的に存在しません。それへのリクエストは、他のすべてのディレクトリと同様に、「index.php」によって処理されます。

<LocationMatch>私が最初に考えたのは、その周りにa を追加することでしたが、ドキュメントによると、「.htaccess」コンテキストでは許可されていません。A<FilesMatch>は許可されますが、ファイルが物理的に存在する必要があると思います ((本当ですか?))。

何か案は?

4

1 に答える 1

1

RewriteRule.htaccess でディレクティブを使用できます。

ExpiresActive On
ExpiresDefault "access plus 1 day"
 [...]

RewriteEngine On
RewriteRule ^nocache - [E=NOCACHE:1]

SetEnvIf REDIRECT_NOCACHE 1 NOCACHE=1

# DO NOT cache /nocache/ URIs
Header set Cache-Control "no-cache, no-store, must-revalidate, max-age=0, proxy-revalidate, no-transform" env=NOCACHE
Header set Pragma "no-cache" env=NOCACHE
于 2014-08-14T08:46:54.487 に答える