エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


Basic認証の.htaccess、.htpasswd生成ツールと解説

      2017/03/11

Basic認証の.htaccess、.htpasswd生成ツール

 

Basic認証の.htaccess、.htpasswd生成ツールとは?

 
Basic認証の.htaccess、.htpasswd生成ツール」ページへ
Basic認証の.htaccess、.htpasswd生成ツール
 
Basic認証の設定をするための .htaccessファイル、.htpasswdファイルを生成するツールを生成しました!
 
Basic認証を設定するために必要な .htaccess、.htpasswdファイルの中身を、入力フォームの項目にあわせて入力していくことで生成してくれるツールです。
 
 
「必要だから作ってみた」シリーズの第 6段目くらいです!
 
 

Basic認証の.htaccess、.htpasswd生成ツールの特徴

 
最大の差別化ポイント!
ファイル単位で Basic認証を設定する機能を有しています!
 
ファイル単位で Basic認証の設定に関する記事は「Basic認証をファイル単位・URL単位で設定する方法の解説」に記事を書いていますので、参考にしてください。
 
また、.htaccess、.htpasswdファイルの入れ物をダウンロードできます!
.htpasswdファイルのパスを調べるツールも用意しました!
 
 
ちなみに、WordPressのログインURLに Basic認証を設定する方法は「WordPressの管理画面ログインURLファイルにBasic認証を設定する方法解説」に記事を書いていますので参照してみてください。
 
 

Basic認証の.htaccess、.htpasswd生成ツールの機能

 
パスワードの生成
入力された ID、PASSを元に .htpasswdに編集をする IDと暗号化されたパスワードを生成します。
 
.htaccessの内容の生成
.htpasswdを置くファイルパスを指定することで、.htaccessに編集する内容を生成します。
 
ファイル単位の Basic認証に対応
ファイル単位を指定することで、ファイル単位で Basic認証を設定することもできます。
 
 

Basic認証の.htaccess、.htpasswd生成ツールの操作方法

 
ID、PASS、.htpasswdのファイルパスを入力し、「.htaccess .htpasswd生成」をクリックすることで .htaccessファイル、.htpasswdファイルに記述する内容が生成されます。
 
それを、.htaccessファイル、.htpasswdファイルにコピペして保存することで、Basic認証に使うファイルとして利用できます。
 
 

Basic認証の.htaccess、.htpasswd生成ツールの便利機能

 
.htaccessファイル、.htpasswdファイルをダウンロード可能
 
Windows上では「.(ドット)」で始まるファイルは作成することができませんので、あらかじめ入れ物になる .htaccessファイル、.htpasswdファイルを用意しています。
それをダウンロードをすることでわざわざ面倒な作業で .htaccess、.htpasswdを作成する手間が必要なくなります。
 
.htpasswdファイルのパスを調べるツールを用意
 
レンタルサーバなどは特にそうですが、ドキュメントルートとサーバのルートが一致していない、サーバのパスが明示されていない、という場合が多いと思いますが、その場合は自分で調べる必要があります。
そのパスを簡単に調べるツールも用意しました。
 
と言っても、PHP 1行のツールですが...
 
また、「get_filepath.php」ファイルは、使い終わった後は削除しておきましょう。
 
 

Basic認証の.htaccess、.htpasswd生成ツールの注意点

 
入力文字の制限について
 
ID、PASS、ダイアログに表示されるメッセージについては、全角文字が使えないため、それに合わせて入力文字の制限をしています。
ですが、.htpasswdのファイルのパス、ファイル単位で Basic認証を設定する際のファイル名については入力制限をしていません。
 
理由は、ID、PASSなどは基本的に自由に入力することが可能なため、入力制限が必要と考えています。
逆に、.htpasswdのファイルのパスは、正しい値を入力する必要があるため特に制限をする必要はないと考えています。
 
 


 

Basic認証がうまく動かない場合のチェックポイント

 

Basic認証のダイアログが表示されない

 
.htaccess、.htpasswdの両ファイルをサーバにアップしてみたものの、Basic認証のダイアログが表示されず、認証せずにファイルが表示されてしまう場合があります。
 
これは、多くの場合、そもそもそのサーバで「.htaccess」によるサーバの設定を許可していない場合に起こる現象ですので、その場合は、「.htaccess」が使える設定になっているかどうかを確認してみてください。
 
レンタルサーバの場合はサーバ会社に訊く必要などがありますが、ローカル環境などの場合は、下記のサイトなどが参考になります。
http://kb.xpressone.net/2566
 
 

ID、PASSを入れても認証されない

 
Basic認証のダイアログが出てきて、正しい ID、PASSを入力しているにもかかわらず認証が通らない場合があります。
 
これは、「.htpasswd」へのパスが正しく設定されていない場合に起こることが多くあります。
「.htaccess」の設定が正しければ、Basic認証は動きます。ですが、「.htaccess」に指定してある「.htpasswd」へのパスが正しくない場合は、そのファイルに書かれている ID、PASSをチェックすることができないため、何を入力しても認証が通らない、という不具合につながります。
 
この場合は、「AuthUserFile /var/www/html/.htpasswd」が記述されている部分の「.htaccess」ファイルのパスを調べて見てください。
パスを調べるツールも提供していますので、確認してみてください。
 
 

Basic認証の.htaccess、.htpasswd生成ツールを作った経緯

 
このブログの中でも Basic認証の設定について言及する場面があります。
 
そして、Basic認証を設定する際には、「こちらのツールなどを使ってみては?」といった感じで紹介をするのですが、ファイル単位の認証設定までは付いていませんので、じゃぁ、自分で作ってみようかな、と思った次第です。
 
入力チェックの処理がありますので、それなりの行数になっていますが、.htaccess、.htpasswdの内容を生成する部分だけであれば 10行程度の処理ですので、実は簡単なツールなのです。
 
 

Basic認証とは?

 
Basic認証についても解説をしようかと思いましたが、下記のサイトに詳しく出ていますのでそちらを参考にしていただく方が確実でしょう。
 
 http://allabout.co.jp/gm/gc/23780/
 
 

Basic認証関連の記事まとめ

 
Basic認証関連の記事もいろいろと書いていますので、あわせて参考にしてみてください。
 
 ロリポップで baserCMSを利用する際の Basic認証の設置には注意しましょう
 WordPressのログイン画面 URLを変更する 管理画面に Basic認証を設定する
 WordPressの管理画面ログインURLの変更方法解説
 WordPressの管理画面ログインURLファイルにBasic認証を設定する方法解説
 Basic認証をファイル単位・URL単位で設定する方法の解説
 ロリポップでWordPress+Basic認証で不具合発生!回避方法解説
 Basic認証の.htaccess、.htpasswd生成ツールと解説
 WP Basic AuthなどWordPressにBasic認証を設定するプラグインのまとめ
 WordPressのカテゴリ単位・フォルダ単位でBasic認証を設定する方法
 WordPressで特定のURL、ページ、ファイル単位でBasic認証を設定する方法

 - PHP・Smarty・ECCUBE

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

GMOペイメントゲートウェイのjava.io.IOExceptionのエラー

ECCUBEの決済でGMOペイメントゲートウェイのモジュールを使ってテスト決済を行った場合の不具合、java.io.IOExceptionと言うエラーの原因と対策方法の解説です。

パーミッション(属性)一括変更ツール・WordPress最適化済

WordPressのパーミッション(属性)を一括変更するツールを作成!ファイル、フォルダのパーミッションが一覧表示でき、ファイルを選んでパーミッションの変更が行えます。

連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説
連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説

PHPの配列・連想配列のキーと値をまとめてhtmlspecialchars()関数でサニタイズ(無害化、無毒化)を行う関数を作成。連想配列のキーはarray_map()関数でのサニタイズは無理。

PHPで正規表現の検証には preg_match_allが便利

PHPで正規表現の検証には preg_match_allが便利です。その便利さの使い方の解説です。

配列の値をテキスト表示する際に「、」でつなげるときの処理方法の一例
配列の値をテキスト表示する際に「、」でつなげるときの処理方法の一例

配列の値を「、」でつないで出力する際、単純にforeachで繰り返し処理をすると「イヌ、サル、キジ、」となるが文字列最後の「、」を出力しない方法を3つ解説している。

ECCUBE mtb_constants initパラメータ設定の項目を追加する方法

ECCUBEのパラメータ設定で設定できる項目を追加する方法を説明します。

ファイル変更だけ!ECCUBEの本番から開発環境をコピーする手順を解説

ECCUBEを本番から開発環境をコピーする際の手順を解説。PGMメンテに必要な開発環境を構築する手順を解説。ECCUBEの仕組みは簡単なので作業は5分ほど。

PHPのデバッグで使う print_r、var_dump、var_exportの動作の違い
PHPのデバッグで使う print_r、var_dump、var_exportの動作の違い

PHPのデバッグ等で変数や配列の中身を確認するために使用する関数print_r、var_dump、var_exportの動作の違い、仕様の違いについて確認した。var_exportがオススメ。

include、requireのパス指定をdirname(__FILE__)、__DIR__と書く理由

include、requireのパスの指定を dirname(__FILE__)、__DIR__で記述する理由に付いて解説。相対パス、絶対パスを直書き、パスを書かない場合は何が問題かを説明。

ECCUBEを開発環境から本番ドメインに変更でエラーが・パス変更について

レンタルサーバでサーバ会社から割り当てられたURLで開発し、本番公開時にドメインを当てたらエラーが!そんな場合の対処方法の解説。対処方法は簡単ですが管理画面からは対応不可。