えむけいさん、 redirect.cgi は、たしかに現在の Location: の出し方だとそうなりますね。 直します。
エラー404のメッセージを/redirect.cgiに設定しているとき、「キャッシュのみ」にしてプロクシ経由でキャッシュされていない文書にアクセスしようとすると、応答の中身が HTTP/1.1 302 Not Found Location: /redirect.cgi になって、結果として無限にリダイレクトを繰り返してしまいます。