そもそも、動的更新バリバリのサイトの更新状況をチェックする了見てどうよ?と思ったのだけど、見たいというんだからしょうがない。ということで、重い腰を上げてみた。
グダグダ書くつもりはないので、これ見てピンときてくれ(無責任)。
RewriteCond %{HTTP_USER_AGENT} !^MyMirrorTool
RewriteCond %{REQUEST_METHOD} ^(GET|HEAD)$
RewriteRule ^/ - [E=GENERAL_BROWSE:YES]
RewriteCond %{REQUEST_URI} =/ [OR]
RewriteCond %{REQUEST_URI} =/index_html
RewriteCond %{ENV:GENERAL_BROWSE} =YES
RewriteRule ^/(.*) /var/httpd/snap.shot.cx/docs/index.html
RewriteCond %{REQUEST_URI} =/rdf
RewriteCond %{ENV:GENERAL_BROWSE} =YES
RewriteRule ^/(.*) /var/httpd/snap.shot.cx/docs/rdf.xml
ちょっとだけ解説すると、User-Agentとして「MyMirrorTool」てのをよこしたヤツのみホンモノを返して、それ以外のクライアントには予め用意してあるstatic fileを返すのだ。
もうひとつ、メソッドを(GET|HEAD)に限定してるのもポイント。これをやらないと、Squishdotへの投稿もstatic fileが受け取ることになって、投稿ができなくなっちゃうのだ。
えっ、上の記述は何かって?static fileはどうやって作るのかって?それは宿題ということで。
ともあれ、これで無事HEADリクエストに対してLast-Modifiedが返すようになった。
更新頻度がやたら多いので、びっくりするんじゃないかしら。取れるようにしたけど、ホント、意味ないと思うよ。
|