ファイル拡張子のみが異なる同一のファイルを PHP エンジンが処理する方法には問題があるようです。
問題: 「If-Modified-Since 条件付きリクエストが完全なコンテンツを変更せずに返しました。」
また、ファイルの内容が同一であり、ファイル拡張子のみが異なる場合でも、.php 拡張子は .xxx 拡張子を持つ同一のツインよりもはるかに高速に読み込まれることが測定されました。
「HTTP により、クライアントは保持しているコピーがまだ有効かどうかを確認するための条件付き要求を行うことができます。この応答には Last-Modified ヘッダーがあるため、クライアントは検証のために If-Modified-Since 要求ヘッダーを使用できるはずです。RED は完了しました。これにより、リソースが変更されていないにもかかわらず、リソースが完全な応答を送信することがわかりました。これは、Last-Modified 検証をサポートしていないことを示しています。」
で終わるホームページ.php
まったく同じファイルですが、終了します.ast
与えられた:
home.php ファイルは、home.xxx としてコピーされ、この拡張子が htaccess に追加され、PHP ファイルとして認識されます。.php ファイルは、鮮度が 3 時間に設定されている php.ini をリッスンし、非 .php ファイルは、鮮度が 2 時間に設定されている htaccess をリッスンする必要があります。
AddType application/x-httpd-php .php .ast .abc .xxx .etc
<IfModule mod_headers.c>
ExpiresActive On
ExpiresDefault M2419200
Header unset ETag
FileETag None
Header unset Pragma
Header set Cache-Control "max-age=2419200"
##### DYNAMIC PAGES
<FilesMatch "\\.(ast|php|abc|xxx)$">
ExpiresDefault M7200
Header set Cache-Control "public, max-age=7200"
</FilesMatch>
</IfModule>
より具体的には、php 以外のファイルが適切にキャッシュされないか、適切にキャッシュされるが適切に検証されないことを除いて、これまでのところうまくいき、すべてが読み込まれます。同封の画像を参照してください。PHP 以外のファイル拡張子のみがエラーを引き起こし、読み込みが遅くなります。
page.php 全体は、そこにあるすべての要素がキャッシュから適切に読み込まれるため、高速に読み込まれますが、page.abc はキャッシュされるべきであるにもかかわらず完全なリクエストが返されるため、ページ全体が遅くなります。
結論: コンテンツ全体を変更せずに返す If-Modified-Since 条件付きリクエストをなくすには、何を変更する必要がありますか?