• ベストアンサー

index.html(トップページ)からしかアクセスできないようにページをつくる。

 タイトルの通りなのですができればjava scriptを使わずにhtml言語でかく方法があればばなあとおもっています。 またjava script で下を実行してみたのですが トップページから下の記述をしたページへ飛ぼうとするとトップページに戻りトップページからもアクセスできませんでした。 <script language=JavaScript> <!-- if(top==self){ location.href="トップページのURL"} // --> </script> どうすればいいでしょうか?よろしくおねがいします。

  • HTML
  • 回答数2
  • ありがとう数3

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

  • ベストアンサー
  • mudpuppy
  • ベストアンサー率51% (48/94)
回答No.1

お答えになるかは定かではないのですが、 もし、飛ぶ先のページが静的ページであり、index.htmlからアクセスできるのでしたら、このページは、index.html以外からもアクセスができてしまいます(静的URLを直接入力することで)。 これを防ぐ方法としては、 (1) 飛ぶ先のページに認証を必要とさせ、index.htmlのみ認証機能を持たせること (2) 飛ぶ先のページをダイナミックページにし、index.htmlにアクセスすることによって、飛ぶ先のページが生成されること (3) 飛ぶ先のページは、リンク元が(Referer)がindex.htmlでないと自分を表示しない仕組みを作る ですが、(1)も(2)も、index.htmlが何らかのプログラム機能を持つことが必要となります(ASP, JSP, PHPなど)。 (3)の場合も、飛ぶ先のページに何らかのプログラム機能が必要です。

naga092
質問者

お礼

ありがとうございました。いったん終了します。

その他の回答 (1)

  • m-kur
  • ベストアンサー率50% (22/44)
回答No.2

本来htmlは文章の要素をマークアップするための言語ですので、質問のようにindex.htmlからしかアクセスできないようにページをつくる事は不可能です。 また、javascriptでアクセス出来ないようにしたとしても、javascriptをオフにされると意味がありません。 ですので、どうしても制限をかけたいならばcgi等を使うのが現実的だと思います。 また、そのJavascriptを単独のhtmlファイルに書いた場合、top==selfになりますので、 location.href="トップページのURL"} が、必ず実行されることになると思います。

naga092
質問者

お礼

ありがとうございました。いったん終了します。

関連するQ&A

  • アクセスする都度INDEXページを変える

    自動的にURL移動するJavaScriptは以下のようにしますが、 いくつかのURLを用意しておき、アクセスする度にそれぞれのURLへランダムに移動させることをしたいのですが、良い方法ありますでしょうか。 よろしくお願いいたします。 <SCRIPT language=JavaScript> <!-- function AutoJump(){ location.href="http://www.xxxxxxx.jp"; } //--> </SCRIPT>

  • (CGI)お気に入り登録やアドレス直打ちを防ぐには?

    フレームページ等を使用していてフレーム内のアドレス直打ち、それによるお気に入り登録を防ぐには以下のタグが有効ですよね?↓↓ <SCRIPT language="javascript"> <!-- if (!document.referrer){top.location.href="http://************";} //--> </SCRIPT> または、 <script language="JavaScript"> <!-- if(self ==top){location.href = "http://*****";} // --> </script> この「アドレス直打ち、お気に入り登録を防ぐ機能」をCGIで表す事は可能ですか? 可能ならば、とどのようになりますでしょうか? CGIで作成した掲示板の中に挿入して防ぎたいのですが・・ 宜しくお願いしますm(_ _)m

    • ベストアンサー
    • CGI
  • javascriptの動作について

    こんばんは。 直接アドレス指定などしてきたものについては、 トップページへ飛ばすことをしようと思ったのですが、 以下の記述だと、IE8では動作しましたが、GoogleCrome(11.0.696.77)、firefox(3.6.0)、safari では動作しませんでした。(location.hrefがダメなんでしょうか?) 解決策・回避策などあれば教えてください。 よろしくお願いします。 <script language="JavaScript" type="text/JavaScript"> <!-- var url; url = document.referrer; if(url != 'http://xxxxxxxxx'/){ location.href('http://xxxxxxxxxxxxx'); } // --> </script>

  • JavaScript、動作解説のおねがい!

    こんにちは。お世話になります。 次のJavaScriptは、どういった事(何を)するものか、おしえてください。 <script type="text/javascript"> //<![CDATA[ if ((top != self) && location.href.match(/^http:\/\/[\d]+\.[\d]+\.[\d]+\.[\d]+\/translate_c/)){ if ( navigator.appName == 'Netscape' && parseInt(navigator.appVersion) == 6 ) { top.location.replace(location.href); } else { top.location = location.href; } } //]]> </script> よろしくお願いします。

  • 複数のアラートから複数のジャンプページへリンクしたい

    サイトの1ページに6個のリンクボタンをつけ、それぞれに違うページにジャンプしたいです。 http://www.sky.sannet.ne.jp/masapine/java_alert8.html を参考に下記のようにしてみましたが、複数ページへのリンクの記述がわかりません。 どこかを変更すればよいのでしょうか。 よろしくお願いいたします。 <SCRIPT LANGUAGE="JavaScript"> <!-- function link1(){ if(confirm('本当にご覧になりますか。')){ location.href='xxx.html'; } } //--> </SCRIPT> <p><a href="xxx.html" onClick="JavaScript:link1();return false"><img src="photo.gif" alt="手術の写真を見る" width="150" height="37" /></a></p>

  • フレームページでアクセス制限したい場合

    ある特定のURLからのアクセスを、どこかのページに飛ばすには、 <Script Language="JavaScript"> <!-- reff=document.referrer; if(reff.indexOf('相手のURL')!=-1){ location.replace('飛ばす先のURL') } //--> </Script> なのですが、 フレームページの<body>と</body>の間に設置したところ、 飛ばすことが出来ず、普通に表示されてしまいます。 この場合どうすれば、いいのでしょうか? ご意見頂けましたら幸いです。

  • ページが数秒たってもジャンプしません。

    いま、私的ホームページを作っています。 最初のページのロードが終わったら7秒後に次のページにジャンプするようにジャバスクリプトを使ってかいたのですが、うまくいきません。 どこが間違っているのかわからないので、どなたかご指摘下さい。(そのまんまコピペします) まず、元ページの<head>タグの間に、 <script language="JavaScript" type="text/JavaScript"> <!-- function jump(){location.href="リンク先のURL";} //--> </script> を挿入しそして、<body>タグのなかに、 <body onLoad="settimeout('jump()',7000)"> と入れました。 何が間違っているのでしょうか? 助けてください!おねがいします。 リンク先のURLは間違い無いです。 ちなみにdreamweaverMXをつかって制作しています。

  • 別ページのインラインフレームのアンカーに移動させる方法

    はじめまして、勉強になります。色々調べてやってみたのですがどうしてもうまく動作してくれません。 やりたい内容は、あるページから同一ドメイン内のあるページに飛ばした時にアンカー情報(#~)付きで渡して、渡したページ先のインラインフレーム内のアンカーに移動させたいのです。 下のソースでstr変数がうまく渡っていないのか、受け取り側のスクリプトがまずいのかが分かりません。(ちなみに途中で変数をモニターする方法があるのでしょうか?) 一応次のページのURLバーには?以降のアンカー情報付きで表示されてはいるのですが、その?以降のアンカー情報がインラインフレームのURLに渡っていないような状態です。 以下省略ソースです。 【送信元】 <SCRIPT Language="JavaScript"> <!-- html1 = "飛ばす先.htm"; function watasu(str){ location.href = html1 + "?"+ str; } //--> </SCRIPT> </head> <body ~ <img src="画像.jpg" onClick="watasu('#2')"> 【受信側 親ページ】 <script language="JavaScript" type="text/javascript"> <!-- url1 = "liveevent_test.htm"; function jump2(){ url2 = "読み込むインラインフレーム.html"; str = location.search.substr(1,location.search.length-1); top.インラインフレーム名.location.href = url2+str; //top.インラインフレーム名.location.hash = #アンカー; <--ちなみにこの一行を上の一行と差し替えたら動きました。ですがここは前ページからの変数渡しにしたいのです。 } // --> </SCRIPT> <body ~ onLoad="jump2()">~ <IFRAME SRC="読み込むページ.html" name="インラインフレーム名" >~</IFRAME> どなたかヒントでもいいのでお力添えください…もしかして根本的なやり方がまずいのでしょうか。 よろしくお願いいたします。

  • 別なページにジャンプさせたい

    ボタンをクリックすると指定のページに飛ぶようにしたいのですが、 <html> <head> <script language="JavaScript"> function jump(){ location.href="index.html"; } </script> </head> <body> <form onSubmit="jump()"> <input type="submit"> </form> </body> </html> でも <html> <head> <script language="JavaScript"> function jump(){ location.href="index.html"; } </script> </head> <body> <form> <input type="submit" onClick="jump()"> </form> </body> </html> でも動きません。(そのページを表示したままです) <body onload="jump()">にしたときは正常にジャンプできるので、クリックのイベントが拾えていないと思うのですが、どのように記述すればいいのでしょうか。 よろしくお願いいたします。

  • 他サイトからの直リンクをTOPページに飛ばすタグ

    ホームページのTOPページ以外のページにリンクを貼られてしまっていることが多くて、困っております。 他サイトからTOPページ以外へ直接リンクして入って来た場合、強制的にTOPページに飛ばす方法を教えて下さい。 他のところで見つけて、下のタグを試してみましたが、まったく効果がありませんでした。 (ちなみに、IEを立ち上げ、詳細ページのアドレスを貼り付け、リンクさせて見ましたが、TOPページへ飛びませんでした。 <script type="text/javascript"><!-- link = document.referrer; if(!link || !link.match(/http:\/\/www.oooo.jp/))location.href = "http://www.oooo.jp/index.html"; // --></script> ご存知の方、よろしくお願い致します。