• ベストアンサー

アドレスバーにトップページを固定表示

通常、トップページと言うと ~hoge.com や ~hoge.com/index.html とアドレスバーに表示されると思うのですが、 どのページにアクセスしてもアドレスバーの表示を 『http://www.hoge.com』 という風に固定したいのですが、どのようにすれば出来るのでしょうか。 .htaccess や cgi などで記述すればいいのでしょうか。 どうぞ宜しくお願いします。

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

  • ベストアンサー
  • naokita
  • ベストアンサー率57% (1008/1745)
回答No.2

#1 です。補足を見ての回答。 #1の回答は、質問通り hoge.com/index.html が hoge.com となります。 書き換えれば、色々応用出来ます。 .htaccess に関しては、サーバマニュアルを参照し慎重に自己責任で設定。 --------------------------------------- しかし、質問の意図を勘違いしていたようですね、失礼。 補足での質問も加味すると、top.html などのサイト内の各全ページを example.com/ で表示したいとの事ですよね? それなら、フレームを使えば良いです。 全てのページを example.com/ のみで各表示できます。 それ以外の方法は、知りません。 フレーム設定方法は、もう忘れましたし、今後も使用しない主義なので検索して調べて下さい。 すぐにわかるでしょう。

linkclub99
質問者

お礼

やはり、フレーム使うのが手っ取り早いでしょうか。 参考になりました。ありがとうございました。

その他の回答 (2)

  • abril
  • ベストアンサー率69% (388/560)
回答No.3

> どのページにアクセスしてもアドレスバーの表示を『 http://www.hoge.com 』という風に固定したい 手っ取り早い方法はANo.2様も仰る通り、フレーム構造にしてしまう事ですが、フレームは諸事情によりお奨めはしたくない仕様ではあります。また、フレームにしたとしてもソースを見ればすぐに本来のファイルの場所はわかってしまいますので、そのURLをダイレクトにアドレスバーに入力されればそこまでですし。 以下は直接の回答ではありませんので読み飛ばして頂いてもかまいませんが… そもそも、どうしてその様にしたいのでしょうか?意図がわからないです。 トップ以下の構造を知られたくないのでしょうか?それとも他のURLでブックマークされたくないとか?だとしたら、閲覧者の使い勝手を考慮してくれていないという印象を持たれてしまう恐れがありますよ。閲覧する側は、目的地へできるだけ速やかに訪れたいと思うものですし、自分が今閲覧しているコンテンツの所在をすぐ把握する為にアドレスバーの表示を見るというのも習慣的にやっている事です。例えば、ホーム以外のURLを直にブックマークする事も例外的ではありません。勿論その様な場合、サイトのメンテナンス(構造変更)によりブックマーク先が予告無くNot Foundの状態になってもおかしくないですが、それは自己責任ですからその事でWeb管理者に文句を言ったりはしませんし。制作する側としても、もしブックマークをホームだけにして欲しければその旨を一言書き添えておけば充分だと思いますし…

linkclub99
質問者

お礼

そもそも、URLが長くなってしまって自分でも見にくくなってしまったのが事の発端でした。閲覧者のことを考慮すると、なにも手を加えないほうが良さそうですね。ありがとうございました。

  • naokita
  • ベストアンサー率57% (1008/1745)
回答No.1

.htaccess RewriteEngine on RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ http://www.example.com/$1 [R=301,L] とか応用して。

linkclub99
質問者

お礼

RewriteEngine on RewriteCond %{HTTP_HOST} ^.*/top.html RewriteRule ^(.*)top.html$ http://www.example.com/$1 [R=301,L] と記述してもダメでした。 依然として http://www.example.com/top.html と表示されてしまいます。 ほかの方法も試してみます。 ありがとうございました。

linkclub99
質問者

補足

naokitaさん回答ありがとうございます RewriteEngine on RewriteCond %{HTTP_HOST} ^.*/top.html RewriteRule ^(.*)top.html$ http://www.example.com/$1 [R=301,L] と記述してもダメでした。 依然として http://www.example.com/top.html と表示されてしまいます。 記述が間違っているのでしょうか。

関連するQ&A