• ベストアンサー

perl/cgi リダイレクトができない

こんにちは。 レンタルサーバーにて、認証後に開きたいページをlocationで実行してみたのですが動かなくて困っています。 index.html(ログインフォーム) ↓ aaa.cgi(認証可否チェック) ↓OKならsessionを与えて bbb.cgi(認証後にユーザーに見せる最初のページ) location以外でダイレクトさせる方法を教えてください。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • moon_night
  • ベストアンサー率32% (598/1831)
回答No.1

METAを使えばリダイレクトできますけども。 <meta http-equiv="refresh" content="0;URL=http://hogehoge.com"> 普通は location でできます。 location の前にprint していませんか? location は 一番最初(printする前)にやらないと動作しません。 ただし、例の動作でしたら私ならばaaa.cgiにすべて入れてしまいますね。 subルーチンとかを使えば余計なページ移動を考えなくてもいいので。

cluewm
質問者

お礼

仰るとおりですね。 別ファイルに記述しなくとも、 subで問題ありません。 ただ、動かなかったので気になりました・・

その他の回答 (2)

  • taseki
  • ベストアンサー率66% (155/233)
回答No.3

print "Location~ という行の前に print "Content-type~ とか入っていませんか?

回答No.2

まずlocationでリダイレクトが本当にできないかどうかを確認するべきかと。 書いたソースと、起きた現象について補足願います。

cluewm
質問者

補足

http://www.futomi.com/lecture/ohter/redirect.html を参考にして、 aa.cgi ----------------------------------------- print "Location: http://○○/bb.cgi\n\n"; ----------------------------------------- としました。 結果は、 http://○○/bb.cgi が出力されているだけで動きません。

関連するQ&A