• ベストアンサー

パスワード付のページを作るには

HPの一部に、パスワードを知らないと入れないページ(友人グループ用の写真など)を作ろうとしています。 どうやって作ったら良いのでしょうか? 方法によっては、ソースを見れば簡単に見破れるパスワードもあるようなので、そうではない方法を教えていただけると嬉しいです。

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

  • ベストアンサー
  • n_kaname
  • ベストアンサー率22% (694/3099)
回答No.5

見られても差し支えないやつで使ってるのですが、外部にスプリクトを置き、さらにパスワードとパスが認証されたら開くhtmlの文字コードを変えて記述してます。 元のページに入れるのがこんな感じ。 <SCRIPT language="JavaScript" src="key.js"></SCRIPT> <FORM><input type="button" value="閲覧" onclick="myEnter()"></FORM> key.jsがこんな感じ。 <!-- function myEnter(){ myPassWord = prompt("閲覧",""); if ( myPassWord == String.fromCharCode(48,49,50) ) location.href = String.fromCharCode(97,98,99)+".htm"; else alert( "パスワードが違います!" ); } // --> 上記ではパスが「012」で「abc.hml」に飛ぶようになります。 パッと見はわからないのですが、やはり判っている人にはバレてしまうので、あまり重要な物は置かない方が良いと思います。 写真くらいならまぁ大丈夫かなぁ・・・

参考URL:
http://www.red.oit-net.jp/tatsuya/java/index.htm
mrmoore
質問者

お礼

ありがとうございます! 参考URLのサイトも、見やすくて私にもわかるように書いてあり、とても勉強になりました。

その他の回答 (6)

回答No.7

方法としては、 ・JavaScriptを利用する場合 → いろいろ方法はありますが、No.2でfuji_02さんが書いていらっしゃるような、隠したいページ名あるいはフォルダ名そのものをパスワードにする方法がいいと思います。→ ただし、ロボット検索などでその隠したページそのものがひっかかる場合があります。 ・CGIを利用する場合 → 入り口のみ隠す、フォルダ全体をアクセス制限する、アクセスログを記録できるなど、いろいろ種類があります。→ CGI可のサーバーでないと使用できません。 ・.htaccessを利用する場合 → フォルダ全体を強固にアクセス制限します。→ .htaccessの使用を許可しているサーバーでないと使用できません。 CGIや.htaccessを利用するよりもJavaScriptを使うのが手軽でしょうね。 でもリンクをはらず、関係者にしかURLを知らせないのが一番楽かも。 どちらにしても無料のレンタルサーバーでは隠しページは規約違反になることがほとんどです。その点ご注意ください。

mrmoore
質問者

補足

CGIも.htaccessも利用できないのですが、 どちらにしてもJavaScriptが手軽、ということも 初めてわかりました。 隠しページが規約違反になるかどうかも調べなくては。ありがとうございます

  • koboy0808
  • ベストアンサー率30% (562/1833)
回答No.6
参考URL:
http://www.net-easy.com/psw/ezpsw.html,http://www.nob21.com/javanavi/samples/form/passwd.html
mrmoore
質問者

お礼

なりました。 ありがとうございます!!

  • akira212
  • ベストアンサー率24% (75/308)
回答No.4

よく、覚えていないのですが。 外部JSを作り、それを参照する。 外部JSに何か特殊なことをすると、ほかの人がソースをとろうとしても、データが改ざんされていて所得できない。 管理者が、一度その形態にしてしまうと、管理者側でもデータは改ざんしてしまっている。 そんなことが可能だったと思います。。 ほんとにあいまいな記憶で、どこで見たかも忘れました。。。 あと、フレームわけして、大本ではないフレーム内にパスワードなどのJS(外部でも)をきじゅつし、そのフレーム内で、 onContextmenu="return false" とすると、とりあえず、ソースは見えなくなりますが、 大本のソースから、フレームのソースを割り出されると見れちゃいますね。。。う~ん また、fuji_02さんが言っているように、無料サーバーのほとんどは、パスワード設定してはいけないという規則になっています。 有料であれば、PHPやCGIも使えると思うので、そちらがいいと思います。

mrmoore
質問者

補足

回答ありがとうございます。 無料のサーバーではパスワード設定ができないとは。 現在はジオシティなので、この問題から見てみます。

  • shige_70
  • ベストアンサー率17% (168/946)
回答No.3

サーバソフトは何でしょう? Apacheでしょうか? あと、サーバのOSも教えてください。 # JavaScriptはカテゴリ違いです。といってもどこが適切が難しいところですが。。。

mrmoore
質問者

補足

質問の仕方&カテゴリが悪かったのですね。 ご指摘ありがとうございます。 サーバーソフトもOSもわからないのです。 すいません。初心者なもので。。。

  • fuji_02
  • ベストアンサー率35% (7/20)
回答No.2

CGIじゃダメですよね? だとしたらこんな感じでどうでしょうか・・・ パスワードと同じ名前のページ(隠したいページ)を作っておいて、以下のようなパスワード入力フォームを設置します。 <form> <input type="password" name="pass"> <input type="button" value="送信" onClick="location.href=(pass.value+'.html')"> </form> これだとページ名と同じパスワードを入力しないとエラーが出ます。 サーバによってはディレクトリを晒してしまう設定になっている所があるので事前に確認しておいてください。 あと、タダのサーバでは承認ページを禁止している所がほとんどですからその辺も気をつけて。

mrmoore
質問者

お礼

ありがとうございます!

  • mld_sakura
  • ベストアンサー率20% (264/1282)
回答No.1

JavaScriptでは無理です。 ソースを解析すれば見破られますから。

関連するQ&A