[Q] 外部ページからの直接 CGI 呼び出しが禁止されている
infoseek では、サイト内の html ファイルからのリファラーが無い CGI 向けリクエストは拒否されてしまいます。
それゆえ、転送用の静的htmlを設置して、当問題を回避する必要があります。 この時の転送方式には二種類あります。
- リダイレクト転送方式
- フレーム転送方式
リダイレクト方式は知られているため、ここではフレーム転送方式のみ説明します。
フレーム転送方式
下記のような html ファイルを URL http://○○.infoseek.co.jp/index.html となるように用意すれば Ok です。
<html> <head> <title>タイトル</title> </head> <frameset cols="*"> <frame src="http://○○.infoseek.co.jp/cgi-bin/wifky.cgi" /> </frameset> </html>
- URL欄が http://○○.infoseek.co.jp/index.html のままであるため、 「(infoseek の制限上)リンクは http://○○.infoseek.co.jp/index.html に 張ってください(でないとエラーになってしまう)」と明記する必要がない。
- 外部リンクをたどった時にも URL 欄が変わらないという問題がある。
- ⇒ Tools 設定の「target value for external link.」に 「_top」と書くことにより回避できる。
本件についての検証に ご協力いただきました QWERTY 様に、この場を借りて、お礼申し上げます。
|