• ベストアンサー

HP製作 自分のパソコン内で相対パスが無視される

助けてください、お願いします。 学校でHPづくりを習っています。発表が近いので焦っていますが担当の講師がずっと休みなのでこちらで相談させてください。 HPをつくっています。 index.htmlが最初のページです。そこから各フォルダがあり、各フォルダの中にまたindex.htmlがはいっています。 たとえばトップページからメニューフォルダーの中のメニューぺージへのリンクは下のいずれかでOKだと思います。 menu/index.html /menu/index.html ./menu/index.html あちこちネットで資料を探すといろんなことを書いていて、どれがいいのかわからないのですけど、どれでもリンクはいけるはず。ですよね? 実際に家のパソコンでは ./menu/ と記述すれば、メニューフォルダー内のindex.htmlのページへ飛べました。 ところが学校のパソコンでは、リンクへとべません。 環境はWindowsのxp sp3、IE7 IE6でも同じです(スタンドアローンです) IEでは、なぜかリンクとしてではなくフォルダを開いてindex.htmlファイルを表示してしまうのです。IEとしてネットをみるときの状態からいきなり、Windowasパソコンでファイルやフォルダをみるときの状態になってしまう。リンクとしてページを開いてくれません。 safari3では「“”を表示する適切なアクセス許可がありません。」とエラーがでます。 なにが問題なのでしょう? どうすれば解決できるのでしょう? トップページをIEのうえにドラッグして開くからでしょうか?(家ではサーバー環境でちゃんとしたURLからトップを開いています)学校ではとくにそういう指示がなかったのでみんなもマイドキュやデスクトップにHPのデータをおいてると思うのですけど。 アドバイスお願いします。

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

  • ベストアンサー
  • shippo
  • ベストアンサー率38% (1216/3175)
回答No.1

httpサーバーが動作していないパソコンではないですか? index.htmlが開けるようになるには、index.htmlファイルがデフォルトで開くように設定されたHTTPサーバーが必要です。 IEの中で「./menu/」だけで開こうとしても、リンク先のフォルダ(ファイル)が表示されてしまうのはあたりまえだと思いますよ。 サーバー動作でない場合であれば、「./menu/index.html」のようにファイル名まで指定しなければファイルは開けないと思います。

noname#119359
質問者

お礼

おっしゃるとおりでした。 フォルダの中のindex.html は、フォルダさえ指定すれば開くものだと思い込んでいましたが、勘違いだったのですね。。。。 ./menu/index.html まで指定すればちゃんとページとして開きました。これは環境の問題だからどうしようもないのでしょうか。。。 アドバイスありがとうございました。

その他の回答 (3)

  • Ace1
  • ベストアンサー率21% (555/2541)
回答No.4

index.htmlの下層にページを作るのに/menu/index.htmlを沢山作らなくても そのページ独特の名前を考えれば良いのです?、それ相当の良い名前(ネーム)があるでしょう。

noname#119359
質問者

お礼

おっしゃるとおりです。 ありがとうございました。

  • shippo
  • ベストアンサー率38% (1216/3175)
回答No.3

#1です。お礼ありがとうございます。 > これは環境の問題だからどうしようもないのでしょうか。。。 これはどうしようもできないといったものになります。 HTTPサーバーが動作しているPCであれば、HTTPサーバーがindex.htmもしくはindex.htmlなどフォルダ直下にあるファイルを探しに行くオプションが用意されています。 このオプションでindex.htmlなどのファイルを読み出すことができます。 IEではこのような指定(オプション)はありませんので、フォルダを指定したパスであればフォルダの中身を表示するようになりますよ。 インターネット上のファイルのようにきちんと表示させたいのであれば、HTTPサーバーをインストールするしかないかと思います。 ちなみに、、、#2さんが書かれたindex.htmlを置いた下層フォルダにindex.htmlを置かないなんていうのは基本的にしません。逆にすべてのフォルダにindex.htmlを置いておかないと、フォルダの中身がすべてさらけ出されてしまうといったページになってしまいます。 ※フォルダ内にindex.htmlを置かないと、開くファイルがないと判断し、HTTPサーバーの設定によってはファイルリストを表示する画面になることがありますので、見せたくないファイルを置いていても簡単に見られてしまいます。 わざとindexを置かずにリスト表示させる場合もありますがね。

noname#119359
質問者

お礼

重ねてのご回答ありがとうございました、 >#2さんが書かれたindex.htmlを置いた下層フォルダにindex.htmlを置かないなんていうのは基本的にしません。 そうだったんですね~ サーバーのこととかもまったくわかっていませんでしたし、勉強になりました。ありがとうございました。

  • xxi-chanxx
  • ベストアンサー率37% (556/1484)
回答No.2

ホームページを作成する場合、indexの下層階にindexファイルを置くからエラーが出るのです。 index.html(あるいはindex.htm)のファイルは、一つのホームページで一つだけです。

noname#119359
質問者

お礼

index.html(あるいはindex.htm)のファイルは、一つのホームページで一つだけというのは決まりごとなのですか? プロの方のサイトでindexの下層階にたくさんのディレクトリをおいて、それぞれにindexファイルを作ってるのをみかけてまねしたんですが。 パスもシンプルで美しいし、いいなぁと思ってました。 回答ありがとうございました。