• 締切済み

スクリプトまでのアドレスを取得するには?

お世話になります。 http://hogehoge.com/aiu/eoka/hoge.cgi hoge.cgiから見た、「http://hogehoge.com/aiu/eoka/」を取得する方法はありますでしょうか。 「http://hogehoge.com/」から「hoge.cgi」までの間には、ディレクトリは2だけではなく3つや4つと、複数入る場合があります。 例えば$urlpathに、hoge.cgiまでのアドレスを取得するようにするには、どうすれば良いでしょうか。 ご教授をお願いします。

みんなの回答

回答No.3

use File::Basename; my $url = "ttp://hogehoge.com/aiu/eoka/hoge.cgi"; print basename($url), "<br />"; print dirname($url); ↓結果 hoge.cgi ttp://hogehoge.com/aiu/eoka 携帯では確認してないですが、多分いけると思います。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

「実行スクリプト名を除く」んだったら, 「最後の / 以下を消す」だけですよね? s#/[^/]*$##; でいいんじゃないかな.

  • plantarum
  • ベストアンサー率53% (42/79)
回答No.1

環境変数$SERVER_NAMEにhogehoge.comが、 環境変数$SCRIPT_NAMEに/aiu/eoka/hoge.cgi が入ります。

mintroll
質問者

お礼

ご回答ありがとうございます。 $SCRIPT_NAMEでは、実行スクリプト名(hoge.cgi)まで含まれてしまいますが、これを省く方法はありますでしょうか? あと、携帯専用のCGIの中に記述するつもりですが、環境変数は携帯からのアクセスでも問題なく取得できるのでしょうか。 ご教授をお願い致します。

関連するQ&A