問題タブ [mod-expires]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - Apache mod_expires が有効になっているにもかかわらず、ブラウザーがファイルを要求するのはなぜですか?
私はそのすべてのキャッシュに本当に混乱しています。ウェブサイトからサーバーへmod_expires
の数を減らすようにセットアップしようとしています。HTTP Requests
http://httpd.apache.org/docs/2.0/mod/mod_expires.htmlmod_expires
の指示に従って、小さな .conf ファイルをインストールして作成しました。
たとえば、すべての.png, .gif, .jpeg
ファイルにCache-Control
ヘッダーがあります。GET Request
私の期待した結果は、ブラウザーが期間内に何もしないということでした (Cache-Control
値から与えられます)。しかし、すべてのファイルがリクエストを発行し、HTTP 304 not Modified
.
それは間違った振る舞いですよね?そのファイルを内部キャッシュからロードする必要があります。私が理解していないことの1つは、ブラウザが : を送信することResponse header
ですCache-Control: max-age=0
。そのようにする必要がありますか?
Request + Response headers
単一の の完全な例を次に示し.png file
ます。
リクエスト
応答
apache - mod_expires なしで有効期限ヘッダーを追加しますか?
mod_expires を使用して、expires ヘッダーを追加できることを知っています。しかし、Apache サーバーに mod_expires がインストールされておらず、PHP などのスクリプト言語を介してファイルへのアクセスをルーティングしたくない場合はどうすればよいでしょうか?
php - .php出力javascriptでヘッダーを期限切れにします
PHPですべてのJSファイルとCSSファイルのminify/obfusctor / gzipスクリプトを作成しましたが、有効期限が切れませんが、これを.htaccessに入れました。
エクストラクタがPHPファイルであっても、すべてのタイプのtext/javascriptとtext/cssを期限切れにしたい。
どうやってやるの?
どうも!
はい私は置きましたheader("Content-Type: text/javascript; charset=UTF-8");
HTTPヘッダー全体は次のとおりです。
php - Apache:mod_expiresがインストールされていないファイルにExpiresヘッダーを追加する方法
Apacheを実行している共有ホストを使用しています。どうやらmod_expiresはインストールされていません。その環境のcssファイル、画像などに期限切れヘッダーを追加する別の方法はありますか?
apache2 - 結果がわからないApache2でコマンドを実行する
ls /etc/apache2/mods-enabled | grep の有効期限が切れる
何も返さないということは、サーバーに mod_expires がないということですか?
apache - Apache:書き換える前にURLにルールを適用する
私は単純なRewriteRuleを持っています:
これは、キャッシュバスティングに使用されます。Webサイトがリリースされるたびに、URLプレフィックスを変更します。例:
/r/17/img/image.jpg
取得し/img/image.jpg
ます。
たとえば、これらに長い有効期限ヘッダーを適用したい
もちろん、RewriteRuleが適用された後、ディレクトリが一致しなくなるため、これは機能しません。Directoryディレクティブ内のこれらのルールを経由でアクセスされるURLに適用するにはどうすればよい/r/
ですか?
ありがとう!
php - PHP session_start()はHTTPExpiresヘッダーを上書きします
次のようなmod_expiresを使用して、text/htmlへのアクセスから2時間にExpireヘッダーを設定しようとしています。
ただし、PHPで使用する場合:
Expiresヘッダーは次のようにリセットされます:
による上書きを回避する方法はありますsession_start()
か?
php - .htaccess:キャッシュコントロール、Webサイトの更新を処理するにはどうすればよいですか?
Webを検索したばかりですが、これに対する適切な答えが見つかりませんでした。
FFのGoogleページ速度拡張機能は、自分のWebサイト(PHP)にファイルをキャッシュするように指示しました。したがって、.htaccess
特定の種類のファイルをキャッシュするために、(Webサイトのベータ領域で)更新しました。
F5ベータ領域でコーディングしているときに、キャッシュ制御設定のために、たとえば、最新の.cssファイルを取得するためにを押す必要があることに気付きました。それは私にとって悪いことではありません...しかし、ユーザーはどうですか?
それで、サイトを更新したとき(またはファイルの有効期限が切れたとき)にすべてのファイルを(のみ)再ダウンロードし、そうでない場合はキャッシュを使用するようにブラウザーに指示できますか?
ブラウザに次のように伝えることができれば完璧です。「更新時刻より前のファイルはすべて古いので、再ダウンロードしてください。ただし、更新時刻より後のファイルは問題ありません。キャッシュを使用してください。」
apache - mod_expires が JPEG 画像にキャッシュ制御ヘッダーを設定しない
< 10 KB
私が取り組んでいる Web サイトの単純な古い JPEG 画像 (それぞれ約 12 枚) が、強制フィードされているキャッシュ制御ヘッダーを取得しない理由がわかりません。.htaccess
私が使用しているルールは、最新の HTML5 Boilerplate .htaccess ファイル (以下の関連セクション) に基づいています。奇妙なことに、サイトにはほぼ同じ量の PNG があり、そのうちの 2 つを除いて、キャッシュ制御ヘッダーは完全に機能します。
(省略記号は、余分なExpiresByType
ルール セクションが削除されたことを示します)
私は自分の/etc/apache2/apache2.conf
ファイルからそこに含まれるほぼすべての conf ファイルに至るまで、適切な説明を見つけることができません。私もいじり、Pagesped と Chrome で何時間も監査しましたが、まだわかりません。
編集:.htaccess
以下で説明するように、この Web サイトの Web ルートにはファイルが1 つしかありません。JPEG は MIME タイプでimage/jpeg
正常に処理されていますが、キャッシュ制御ヘッダーが欠落しており、その理由がわかりません。
apache - ExpiresDefaultを.htaccessファイルに追加する
.htaccessファイルを更新して次のものを含めました。
私は、すべてのcssとjsが1か月間変更されないため、ファイルをキャッシュできることをクライアントに伝えようとしています。
2つの質問があります、
- これは私が望むことを達成するつもりですか
500エラーが発生していることを追加してから、.htaccessファイル全体を以下に示します。
/li>