サーバーによってはサーバー管理画面から行える場合もあります。
ここでは手動で設置することを想定しています。
まずは必要なファイル一式をこちらよりダウンロードしてください。
Basic認証セット
htaccessファイルにフルパス(サーバ上の絶対パス)を記述する必要があるため、
フルパス取得用のPHPファイルも一緒に入ってます。
zipファイルを解凍すると以下の3つのファイルがあります。
※htaccessファイル、htpasswdファイルとも特殊なファイルでファイル名がなく、拡張子だけのファイルになります。中に書いてるのは単なるテキストですので、メモ帳やエディタなどで開けます。
1、htaccessファイル・・・コアとなるファイル。htpasswdファイルへのフルパス(サーバパス)を記述します。
その他の部分はそのままにしてください。
2、htpasswdファイル・・・・ユーザIDと暗号化したパスワードを記述するファイル
3、path.php・・・・フルパス(サーバパス)を取得するためだけのファイル。
こちらのプログラムの場合はdataディレクトリ内(data.csvと同じ場所)に設置してください。
※htaccessは設置したディレクトリ内、及びその下層ディレクトリ内で有効になります。
http~から始まるURLです。そこに表示されてるのがフルパスです。それを1行すべてコピーしておきます。
htaccessファイルには以下の記述があります。
———————————————————-
AuthUserFile /home/xxxxx/xxxxx/.htpasswd AuthGroupFile /dev/null AuthName "Please enter your ID and password" AuthType Basic require valid-user
———————————————————-
変更するのはAuthUserFileとAuthName(任意)のところだけです。
AuthUserFile・・・・パスワードを記述したファイルのフルパスを記述。
先ほどpath.phpで取得し、コピーしたパスの文字列を貼り付けてください。
文字列のpath.php部分を「.htpasswd」に変更。
この部分は必ず書き換えてください。
AuthName・・・ID、パスワード入力画面で表示される文字列。必要に応じて変更下さい。
ただし、日本語はIE以外で文字化けします。ので、そのままでもいいかもしれません。
このままでもOKです。
ページにログインするためのユーザID、パスワードを決めます。※半角英数字
※ちなみにダウンロードしたhtpasswdファイルにはあらかじめ以下の内容を暗号化したものが記述してあります。
ユーザID:admin
パスワード:1397
以下のページで暗号化された文字列を取得してください。
暗号化パスワード生成ツール
http://www.shtml.jp/htaccess/make_htpasswd.html
※こちらのサイトの他にも「Basic認証 パスワード生成」などで検索すればたくさん出てきます。
あなたが考えたユーザ名、パスワードを入力して生成された文字列をコピーして下さい。
※元々書いてあるものは削除してください。
変更したhtaccessファイルとhtpasswdファイルを上書きアップロードで完了です。
アップ先URL/data/data.csvにブラウザでアクセスしてみてください。
ユーザIDとパスワードの入力を求められるはずです。
設定したID、パスワードを入力して、ちゃんとCSVファイルの「開く」、または「保存」画面が表示されるか確認して、OKならすべて完了です。表示されない場合は、リンク先のファイル名が.csvになっているか確認下さい。
Basic認証は一度認証すればブラウザを閉じるまで有効です。逆にブラウザを一度閉じ、再度アクセスしてみて、ちゃんとユーザ名、パスワードの入力が求められるかもご確認下さい。