こんばんは。
お世話になっております。

以前、http://www.hoge.com/hoge のように、拡張子を打ちこまなくてもapacheの設定で該当するファイルにアクセスすることが出来るといったサイトを見たことがあるのですが、そこでちょっと困ったことがありまして、質問させて頂きます。

と申しますのも、フォームにて入力されたURLをポストで受け取り、そのURLのファイル内にある、同一ドメインのリンクの一覧を表示させるために各リンクを(相対パスや絶対パス共に)配列に格納しており、それを表示させ、かつアンカータグを貼りたいと思っているのですが、上記のように、拡張子の無いファイル名があった場合、どのようなアルゴリズム?になるのかお知恵を頂戴出来ればと質問させていただきました。

もう少し具体的にお話すると、
hoge
hoge/
hoge/index.html
./hoge
./hoge/
./hoge/index.html
../hoge
../hoge/
../hoge/index.html
このようなデータが配列にあった場合、一般的にはスラッシュで終わっていないものは、フォルダとしてサーバが認識すると思うのですが、それがフォルダではなくファイルを読み込むよう設定されていた場合の対処の仕方が分かりません。

以上、汎用的なものを作れればと思い、このようなことを想定して作っているのですが、拡張子のないURLでファイルにアクセスするというものを作ったことがないため、どのようにしたら良いのかが分かりません。お忙しい中恐縮ですが、宜しくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

>> 拡張子の無いファイル名があった場合、どのようなアルゴリズム?になるのか


>> ファイルを読み込むよう設定されていた場合の対処の仕方が分かりません。
>> どのようにしたら良いのかが分かりません。

アルゴリズムや対処方法を質問するためには、
まず、“何をやりたいか”を説明しないと回答は得られにくいと思います。

拡張子が無く、かつ スラッシュで終わっていない場合に
ファイルなのかフォルダーなのかを判定したい。
という質問という解釈で良いのでしょうか
そうだとした場合、
 URLだけでは判定はできませんので、アクセスして調べることになります。get_headers関数でアクセスして 帰ってきたヘッダーの先頭が「HTTP/1.1 301」などのように
300番台ならフォルダー
200番台ならファイル、
400番台なら無効
と判断すれば多くの場合は、合っていると思います。
rewriteなどが設定されている場合は、そうとは限りませんが・・
    • good
    • 0
この回答へのお礼

mpxさま

お世話になっております。
すみません。mpxさまからの回答に気づかずに今日まで来てしまいました。
ご親切な対応をありがとうございました!

お礼日時:2009/07/27 23:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報