やはり、404を使って簡単にやればいいのではないだろーか。
.htaccess ファイル.
ErrorDocument 404 /redirect.cgi

redirect.cgi ファイル
#!/usr/local/bin/perl
print "Content-type: text/html; charset=Shift_JIS\n\n";
print "<html><head><title>テスト</title></head><body>";
if (!$ENV{'REQUEST_URI'}) {print "直接呼ぶな</body></html>\n";exit;}
print qq(<A HREF="$ENV{'REQUEST_URI'}">$ENV{'REQUEST_URI'}</A>);
print "</body></html>\n";