apache:htaccess
文書の過去の版を表示しています。
.htaccess
sample
RewriteEngine on RewriteRule ^3b http://ensoku.dyndns.org [R=301,L] RewriteRule ^3b/(.*)$ http://ensoku.dyndns.org/$1 [R=301,L] ## Add Expires headers ExpiresActive On ExpiresDefault "access plus 1 week" ## Compress components with gzip SetOutputFilter DEFLATE BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary Header append Vary User-Agent env=!dont-vary ## Configure entity tags FileETag none ## SetEnvIf Referer "180.26.239.162" BadReferer order allow,deny allow from all deny from .ukrtel.net Deny from env=BadReferer
解説
RewriteRule ^3b http://ensoku.dyndns.org [R=301,L] RewriteRule ^3b/(.*)$ http://ensoku.dyndns.org/$1 [R=301,L]
- URIに3bの文字列が含まれていれば、http://ensoku.dyndns.orgに転送する
- その際の転送理由は「301(=Moved Permanently、永久に移動した)」となる
- 各行のルールが適用されれば、それ以降のルールは適用しない「L:Last」
## Add Expires headers ExpiresActive On ExpiresDefault "access plus 1 week"
- キャッシュコントロールを有効にする
- 全てのページで1週間キャッシュを保持する
⇒更新されてもその期間は古い内容が適用されるので、更新の頻繁なページや動的なページには不向き
- 画像ファイルなど、特定のファイルタイプを個別で指定する場合は、以下のように記載できる
ExpiresByType ファイルタイプ "(access|modification) plus N (minutes|days|weeks|months|years|)"
## Compress components with gzip SetOutputFilter DEFLATE BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary Header append Vary User-Agent env=!dont-vary
- Apacheのmod_deflateモジュールで圧縮転送を有効にする
- IE、Mozilla系のみ圧縮を行う
- gif jpg png は圧縮しない(元々圧縮されているものなので、効果薄)
## Configure entity tags FileETag none
- ETagにはi-node情報が含まれているのでセキュリティ的に出力しない方が良い
- ロードバランサ - 複数WEB - ファイルサーバなどの環境ではETagは経路毎に変わるので、キャッシュが有効に働かない
apache/htaccess.1362014686.txt.gz · 最終更新: 2025/02/16 13:50 (外部編集)