php?? js?? ってやつがベーシック認証設定したよ!




  IMG_9097 こんにちは、プロクラスの渡辺です。 写真はまぶしいですが(太陽の斜め左下に豆が見えます?これ飛行機なんです!)、最近雨が続いてやっと梅雨らしくなってきたなあと感じながらためらいもなく除湿をかける今日この頃です。 まだまだ未熟な私ですが、今回【ベーシック認証】を設定することになり、「存在は知っているぞ!」「でもどうするかわからない!」という右も左もわからないままGoogle先生とベーシック認証の先輩方にお世話になりつつ設定した方法をお伝えします~!!!  

■初めに

ベーシック認証】とは何ぞや?という方もいるのではないでしょうか。 b_01 すごく簡単に今回の目的を言うと、見せたくないサイト等にパスワードを設定して「そのパスワードを知っている人じゃないと見れない」ようにする感じです。
本当はもっといろいろなことが書いてありましたが、私が理解した範囲で書くので詳しくは参考サイトをご覧ください~~!!

■.htaccessを作る

この「.htaccess」というが特殊なファイルらしいのです。 b_02とりあえず今回私は既存のサイトに設定することになったのですが、「.htaccess」はベーシック認証を設定するだけじゃないので「.htaccess」のファイルがあったので既存のものを使用したいと思います!
既存のものがある場合は、既存のファイルに追記する形で大丈夫です。 いちから作る時も、テキストエディタとかなんでも大丈夫です。
※.htaccessにはいろいろな用途があるのですが、詳しい書き方はこちらのサイトがわかりやすいかと思います。

▼ベーシック認証を設定する

では、.htaccessのファイルの中に4行記述します。 このファイルにはこれがあれば基本的にはOKです!

AuthType Basic
AuthName “Please enter your ID and password.”
AuthUserFile /xxx/xxx/xxx/.htpasswd //ID・パスワード格納ファイルの所在
require valid-user

  • 1行目は、認証方法として「Basic認証(基本認証)」を使う指定です。
  • 2行目は、認証に使う領域名(認証ダイアログにメッセージとしても表示されます)の指定です。
  • 3行目は、後述するパスワードファイル(.htpasswdファイル)の所在の指定です。
  • 4行目は、「認証されたユーザーにアクセスを許可する」という意味の指定です。

書き直すところは、2行目と3行目だけで大丈夫です!
3行目が一番大切なのですが「IDとパスワードを記載したファイル」を次に作ります。
そのファイルの場所を「フルパス」で記述します。
.htaccessと同じ場所においても大丈夫ですし、違う場所でも大丈夫です。 ▼注意!
ここでの「フルパス」とは、URL(http:// から始まるURL)ではありません! b_03サーバ内でのフルパス」のことを言います。 基本的にはFTPソフトを使ってファイルをアップロードする際の表示でわかるのですが、その表示も違うことがままあります。
私が時間のかかってしまったところなので、メモ書きしておきます。参考までに…。

○番外 フルパスの調べ方

一番時間がかかってしまったといっても、原因が「フルパス」だとつかむまでが長かったので フルパス自体はとっても簡単にすぐに調べられました!
FTPと同じなら何も問題ないのですが不安な方は最初からフルパスを調べたほうがスムーズかと思います!
「IDとパスワードを記載したファイル」を置いたディレクトリに下記のコードを記述した「(任意のファイル名).php」を設置して そのディレクトリのURLをブラウザで表示するとフルパスがわかります。

 <?php
echo __FILE__;
?>

http://xxx/xxx/xxx/任意のファイル名.php これで簡単にフルパスがわかります! 調べた後はFTPサーバからこのファイルを削除しておいてください。 もしかしたら誰かがしれっと調べちゃうかもしれません!

■.htpasswd(IDとパスワードを記載したファイル)を作る

二つ前に言ってた「IDとパスワードを記載したファイル」を作ります! b_04「IDとパスワードのセット」を記述するだけです! あと、一般的には「.htpasswd」というファイル名が多いみたいですが、このファイル名は任意でつけれます。(私はいろいろあってちょっと変えてます…)
これもメモ帳でもなんでもテキストファイルなら大丈夫です。

▼.htpasswd このファイルに記載する

「IDとパスワード」は「1アカウント1行」で構成されています。 例えば、 ID名:暗号化されたパスワード
proclass:AKJ30SAet みたいな感じです。 これを普通に改行してふやしていくことも可能です!

▼パスワードの暗号化

あととっても大切なことなのですが、.htpasswdに記述しているパスワードっていうのは必ず暗号化しています。
かといって自動で暗号化をしてくれるわけでもないので、暗号化をしてくれる便利なサイトさんで暗号化しましょう。 http://www.luft.co.jp/cgi/htpasswd.php
▲パスワードを発行できるだけでなく説明もしてくれて大変優しいです。 http://tech-unlimited.com/makehtpasswd.html
▲お世話になったのはこちらです。まるっとコピーしました。 ありがとうございます…便利な世の中ですね…。

■アップロード

この二つを、ベーシック認証をかけたいディレクトリ(フォルダ)にアップロードします。 例えば /home/tako/ のフォルダの中にアップロードすると

/home/tako/fugu /
/home/tako/ika/yari /
/home/tako/ika/yari/sushi /
/home/tako/…/…/…

/home/tako/ 以下のファイル全てにベーシック認証がかかることになります! また、

/home/tako/
/home/tako/fugu /
/home/tako/ika/yari /
/home/tako/ika/yari/sushi

/home/ebi/

この場合、/home/ebi/ 以下にはベーシック認証はかかっていません。 もし、ebiフォルダ以下にもベーシック認証をかけたい場合は、/home/に「.htaccess」と「.htpasswd」をアップロードしましょう!

▼最後に

これでベーシック認証ができるはずです!! できない?できないときは参考サイトを見てください!大体のことはここで解決できますし、むしろ参考サイトブログを全部読めばできます!!先人の知恵ってありがたい…。 参考サイト: http://allabout.co.jp/gm/gc/23780/
私は全貌を知った方が理解できるのでこちらのブログがすごくわかりやすかったのですが、そうでない方はもっと端的に書いてあるサイト様もたくさんありますので、そっちでもいいかもしれない! さて、実はこっそりこっそりとプロクラスサイトのプチリニューアルを進めています。 今まで以上にお探しの授業が探しやすくなるようになっているといいのですが・・・! 早くお目見えできるよう頑張ります!