• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:既存HPのリンクをブロックしてPCに表示)

既存HPのリンクをブロックしてPCに表示

このQ&Aのポイント
  • 既存HPのリンクを制限してPCに表示する方法について
  • 外部のホームページをデジタルサイネージ的に表示する手段について
  • 他サイトや意図しないページへのリンクをブロックする方法を調査する

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

  • ベストアンサー
  • JaneDue
  • ベストアンサー率75% (263/350)
回答No.2

>他のすべてのボタン類はクリックしても反応しない ということでしたら書き換えしかないので思いつく方法は2つ。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■PHPで file_get_contents("url~")で好きなように書き換えできます。 許可リンク以外はすべて削除、また許可したリンクであっても、ジャンプさせては操作ができなくなるので、すべて当該PHPのクエリになるよう置換し、PHPでGET指定のURLを取得 >> 変換処理 >>表示します。 例えば<a href='http://example.com/'> は <a href='このPHP.php?url=http://example.com/'>~ となるよう置換して、全ページをこのPHPファイル1つを通して閲覧するようにします。 長所は、ドメイン関係なしにどこからでも操作可能なこと 欠点は、別ドメインに置いた場合cssやjavascript等など付随ファイルのパスが狂いやすいので、 絶対パスで書かれていない等場合によっては処理が煩雑になることも。 同サーバに置けるなら比較的簡単かと思います。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ■JavaScriptで iframe内に当該サイトを表示して、JavaScriptでいじる。 店舗ではこのiframeを通して閲覧します。ざっくり例です(Firefoxでのみざっと確認) site.html <html> <body> [<a href="http://www.example.com">○example.com</a> ]  [<a href="http://www.example.jp">×example.jp</a>]  [<a href="http://www.example.net">×example.net</a>]  [<a href="http://www.example.org">○example.org</a>] [<a href="http://www.example.co.jp">×example.co.jp</a>] </body> </html> ----------------------- ・iframe.html <html> <body> <iframe src="site.html" id="iframe" style="width:100%;height:100%;" onload="setClick();"></iframe> <script type="text/javascript"> function setClick(){ var iframe = document.getElementById('iframe'); doc=iframe.contentDocument; doc.addEventListener('click',remakeTarget, true); } function remakeTarget(e){ var url = e.target; //許可するリンク if(url.href.match(/(example.com|example.org)/)){ alert("リンク許可"); }else{ url.href= "JavaScript:void(0)"; } } </script> </body> </html> ---------------------- 長所は、比較的簡単に設置できるかも 欠点は、別ドメインには置けない事とクロスブラウザが面倒そうなこと。

suzushiro7510
質問者

お礼

JaneDue様、taloo様、 ご回答ありがとうございました。 javascriptもPHPも、 今回のケースでは弊社の技術的にも お客様に「できます。」とは言えず、 依頼としては一旦白紙となりましたが、 コードのご提示や、セキュリティーの注意等 多くの参考を得ることができ、感謝いたします。 ありがとうございました。

その他の回答 (2)

回答No.3

Webデザインではなく、セキュリティー、ネットワーク管理の範疇だと思います。 hostsファイルを書き換えても、IPアドレスを直入力されれば意味はありません。 『簡単に出来ます』の業者にお願いした方が良いと思います。 「HTMLデータの書き換えが簡単にできる」なのか、「セキュリティーをふまえて総合的にできる」なのか、確認しておいた方が良いと思います。 おそらく店舗内ネットワークの管理情報が必要になりますから、店舗内のネットワークを構築した業者に頼むべきです。 というか、それ以外の会社に頼んでも、おそらく設定は不可能です。 デジタルサイネージに使うなら、物理的(無線接続含む)にネットワークから遮断し、 パソコンにウェブサーバーソフトをインストールして、localhostで完結させる方が、一番簡単ではないかと思います。 (OSの設定を変更できなくする、ブラウザ以外のアプリに切り替える事が出来なくする等々はもちろんです。自分のスマホにテザリングさせてアクセスしようという人は、(攻撃者の中にも)そんなにいないと思いますけどね。)

  • JaneDue
  • ベストアンサー率75% (263/350)
回答No.1

これのこと? (IE)http://support.microsoft.com/kb/879191/ja hostsファイルでもいけそうだが・・・。

suzushiro7510
質問者

補足

質問内容に補足を致します。 補足だと画像が添付できないので文章にて。 例えばトップページにメニューボタンと いくつかのバナーがあるHPをPCに表示し、 メニューボタンの特定のいくつかと、バナーのいくつかのみ クリックするとリンク先へ移動し、 他のすべてのボタン類はクリックしても反応しない という状態で表示させたい。 という内容です。

関連するQ&A