それにあわせてtheme.phの%arcbase周りを
%cat <a href="%1">%content</a><a href="%arcbase/%year/%month%day/%1">_</a></h3> <div class="section">\n);こんな感じで/%year/%month%day/を追加。
archive/index.hogecgiも
#!/usr/bin/perl
$query = $ENV{'QUERY_STRING'};
$date = substr($query,1,9);
$date =~ s/\.//g;
$url = substr($query,11);
$url =~ s/\//!/g;
$url =~ s/([^0-9A-Za-z_ ])/'%'.unpack('H2',$1)/ge;
print "Location: http://www.otsune.com/archive/$date/$url\n\n";
という感じに。最終行がハードコーディングなので自分のサイトに合わせたりする必要アリ。本当はサニタイズ関係はもうちょっとなんかあったかもしれない。.htaccessは
DirectoryIndex index.hogecgi AddType text/html hogecgi AddHandler cgi-script hogecgi RemoveHandler cgi AddType text/html php AddType text/html cgiという感じで。かなりテキトー。
公衆送信権のアレとかロボットの回収がナニなのでAuthType Basicとかrequire valid-userをテキトーに。
過去のアーカイブをlocaltime((stat("$ARCHIVE_DIR/$file"))[9]);で割り振ったけど、それだと巡回タイミングで日付がずれちゃってたりしてた。まぁ今からのローカルキャッシュはhnfの日付と一致するから気にしない。
気が付いたときにmvして修正しとこ。



[ コメントする ]