12 件のコメントがあります。

スパムブロック機能により、投稿が失敗することがあります。
うまくいかない場合は、一行目だけをまず投稿し、そのあと編集から残りを追記してみてください。

1 - 12 / 12

» .htaccessでphpMyAdminのアクセス制限をしよう

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : ナジャ @ 2006-11-26 10:30:00 編集 引用

とても分かりやすい説明で参考にさせていただいています。私はOS X10.4.8ユーザーです。WebServerにアクセス制限はかけることことはできましたが、/User/ユーザー名/Sites/phpmyadmin/に、.htaccess、.htpasswdをおいてもphpMyAdminにアクセス制限がかからないのですが教えてください。ちなみに、.htaccessには"User/ユーザー名/Sites/phpMyAdmin/.htpasswd"に変更はしていますが…。よろしくお願いします。

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : namahage @ 2006-11-26 16:44:22 編集 引用

ナジャさん、こんにちは、はじめまして。
小さなサイトですが少しでもお役に立てればうれしいです。

さて、ユーザーのサイトフォルダ内でhtaccessを有効にする方法についてです。
WebServer内での設定に成功されているので、あとは/etc/httpd/users内のユーザー名.confが正しく設定されていれば、後は設置するだけという流れですから、たぶんちょっとしたところでなにかうまくいっていないところがあるんではないかと思います。。

で、ナジャさんの書き込みを見て気がついたのですが、

.htaccess

に記述した.htpasswdの場所です。

User/ユーザー名/Sites/phpMyAdmin/.htpasswd

とお書きになっていますが、これは、

Users/ユーザー名/Sites/phpMyAdmin/.htpasswd

ではないかと思います。UserのところがUsersだと思います。

あとは一度コンソールを開いてhttpdのerror.logをのぞいてみることをおすすめします。もしかしたらなにかエラーが書き込まれているかもしれません。
User/ユーザー名/Sites/phpMyAdmin/.htpasswdが見つかりませんなどというエラーが書き込まれていたら、おそらく.htaccessの中に記述を修正するとうまくいくんではないかと思います。

AuthUserFile /Users/ユーザー名/Sites/phpMyAdmin/.htpasswd

というふうにですね。

それではがんばってください。

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : ためぞう @ 2007-02-07 00:24:31 編集 引用

先日は質問させていただきありがとうございました。
その後、「moodle入門」という本を読んでいたら、Mac OS XでMoodleを導入した例が紹介されており、その中で、MAMP(Mac,Apache,MySQL,PHPがセットになっているもの, ver.1.4.1)がてっとり早いと書かれており、試してみました。
インストールはうまくいったようなのですが、.htaccessでのphpMyAdminのアクセス制限がうまくいかず困っております。
MAMPでは全部まとめてApplicationsフォルダにインストールされます。phpMyAdminは、
Applications/MAMP/bin/phpMyAdmin/にあるようなので、
htaccessの記述を、
AuthUserFile
Applications/MAMP/bin/phpMyAdmin/.htpasswd
AuthGroupFile /dev/null ...
と書き換えてやってみたのですが、うまくいきません。
ファイルを保存する場所が間違っているのでしょうか。

Applications/MAMP/の中身は、
bin/
cgi-bin/
conf/
db/
htdocs/
library/
licences/
logs/
MAMP
tmp/
他read meファイル、となっており、

そのうちのbinフォルダの中身は、
apache2/
favicon.ico
mamp/
php4/
php5/
phpMyAdmin/
SQLiteManager/
start.sh
startApache.sh
startMysql.sh
stop.sh
stopApache.sh
stopMysql.sh
となっておりました。

これと別に、試験的に、uses/自分のユーザ名/sites/folder/の中にhtaccessを作ってみたら、こちらはうまくいきました。

何かお気づきの点がありましたらアドバイスいただければ幸いです。

Re: .htaccessでphpMyAdminのアクセス制限をしよう-MAMP使用時-

From : namahage @ 2007-02-09 08:19:40 編集 引用

こんにちは。
朝、頭を洗いながら思いました。

ためぞうさんが作成した.htaccessファイルは

AuthUserFile
Applications/MAMP/bin/phpMyAdmin/.htpasswd
AuthGroupFile /dev/null ...

となっていますが、
これはもしかしたら、Applicationsの前に/がいるんじゃないでしょうか。

AuthUserFile
/Applications/MAMP/bin/phpMyAdmin/.htpasswd
AuthGroupFile /dev/null ...

とすればうまくいくような気がします。

こうした記述に問題がある場合は、apacheのアクセスログというのを確認すると原因がつかみやすくなります。
MacOSX標準のパーソナルWeb共有の場合は、ユーティリティフォルダにあるコンソールからhttpdログを確認することで今現在起きているエラーがどういったものか参考にできます。
MAMPを使用した場合は、MAMPフォルダ内に「logs」というフォルダがありますので、このフォルダを開きますと、「Apache_error_log」があります。これをティストエディットやコンソールで開きますと、MAMPのhttp周りで起きているエラーを確認することができるはずです。htaccessに関するエラーなども記述されているんではないかと思います。

もし、/の追加でうまくいかないようでしたら、ログを確認してみていただいて、それからまたなにか考えてみたいとおもいます。
それではがんばってください。

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : 素人 @ 2009-06-05 08:52:59 編集 引用

OSX10.3 で.htaccessを設置したのですが、認証画面がでてIDパスを入れても認証画面が繰り返し出てきます。
さらに2回目以降は、認証画面に文字化けが発生しています。 phpmyadmin?}?*{+?←みたいな感じです。

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : namahage @ 2009-06-09 08:17:21 編集 引用

どうもこんにちは.

.htaccessファイルの作成はこのログで紹介していたmiを用いた作業でやられましたか?
だとすると,なんとなくですが,この症状は,.htaccessの記述内容になにか妙なデータ(改行コードや全角文字)が入ってしまっているのかもしれません.

まず確認しておきたいのは,.htaccessファイルの改行コードですね.
miのウィンドウ上には改行コードを指定できるようになっていますので,一度そこをLFにして再度保存してみてください.
それでダメならファイル内に無駄なスペースや全角文字が隠れていないか見てみてください.
あと.htaccessに記述された.htpasswdのファイルネームにミスはないかもわすれずに.私はしょっちゅうスペルミスではまっています.

.htaccessファイルに特に問題が見つからない場合は,.htpasswdファイルに問題があるかもしれません.
もう一度コマンドラインからパスワードを作成して,コピー,ペースト.改行コードをLFにして設置を試してみてください.

これでだめならもう少し掘り下げてやってみましょう.

もしくは

htaccess_Setup_AppleScript_ver1RC1
http://earlybirds.ddo.jp/namahage/inegalog/files/article.php?id=29

これを使ってみてください.

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : ishino @ 2009-06-12 20:29:08 編集 引用

はじめてコメントします。

わたしも「素人」さんと同様の状態なのですが、
namahageさまの返答にあるように何度か見直し・やり直しをしているのですが、
認証画面がでてIDパスを入れても認証画面が繰り返し出てくる状態です。

htaccess_Setup_AppleScript_ver1RC1 を試したり、手作業で行ったり......
いろいろ見て、入れては最終的に初期化...の繰り返し。
なんだかめげてきました。
htaccess作業を行う前までは順調なんですけどね。

何が悪いのでしょう?

環境はOSX10.4.11
「P_BLOG」を使いたいので、DB_SABA_PHP5_Tiger RC1 を入れました。

「素人」さんは解決したのでしょうか?
何か糸口はないのでしょうか?

.htaccessによるアクセス制限ではない方法も考えたほうがいいのですかねえ.....

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : namahage @ 2009-06-16 21:48:44 編集 引用

どうもこんにちは.

なるほど...ほかの方も同様の現象があるのですね.
わたしももうすこし早く調べてみればよかったです.

これは.htaccess側のエラーではないのかもしれません.とりあえず,一度,phpMyAdminのconfig.inc.php(バージョンによっては名前が異なります)にある以下の記述部分がどうなっているか確認してみてもらえますか?

$cfg['Servers'][$i]['auth_type'] = 'xxx';

xxxの部分はどうなっているでしょうか?
.htaccessをつかった認証を行う場合,このxxxのところが

$cfg['Servers'][$i]['auth_type'] = 'config';

になっていないとうまくいかないと思います.
以前はデフォルトでconfigになっていたと思う...のですが,現行はcookieになっているかもしれません.

これでもうまくいかない場合は,実際に.htaccessによるアクセス制限が正しく動作するかをテストするフォルダを作って,まず.htaccessのテストをやってみたいですね./Library/WebServer/Documents/以下にtestという名前のフォルダを作り,その中に適当なindex.htmlファイルを設置.そこに.htaccessによるアクセス制限をかけ,index.htmlへのアクセスが適切に制御されるかですね.これで問題の切り分けができるようになると思います.もし,余裕があったら試してみてもらえませんか?

もっとも,ここで体力を消費していてももったいないですので,.htaccessを使わない方法で,問題解決してしまうのもよいように思います.その分の労力でもっといろいろ楽しい作業をしたほうが健康ですしね.

私のサイトのほうはほぼ古い情報のままで,更新がされていないのですが,現在リリースされているphpMyAdminならこの.htaccessによるアクセス認証よりは,「http認証」を利用した方が,.htaccessのような面倒な作業をしなくてすむので,そちらをおすすめします.

設定の仕方は簡単です.
config.inc.php(バージョンによっては名前が異なります)ファイルの以下の部分を

$cfg['Servers'][$i]['auth_type'] = 'config';

から

$cfg['Servers'][$i]['auth_type'] = 'http';

に変えればOKです.
これでphpMyAdminにアクセスすると,MySQLのユーザー名とパスワードそのままでログインできるようになります.とても便利ですが,MySQLのユーザー名とパスワードが漏れると怖いので,その辺はよく考えて使う方が吉です.

それではがんばってみてください.

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : namahage @ 2009-06-16 22:05:22 編集 引用

あっと,すみません.
いま読み直してみて気がつきました.

DB_SABA_StartPack_PHP5.2 for Tiger RC1

をインストールしていたんですね.
このSABA_StartPackに含まれているphpMyAdminでは.htaccessを利用しなくてもよいように,最初からhttp認証でアクセス制限されるように,私が設定をパッケージ化しています.

なので,.htaccessの設置は必要ありません.SABA_StartPackをインストールした際に設定した,MySQLのユーザー名rootとそのパスワードを入力すれば,そのまま接続できます.

というわけでいま起きている現象を説明しますと,phpMyAdminは二重にアクセス制限されているということになります.一つめは設置された.htaccessによる制限,二つめはhttp認証による制限です.何が起きているか,流れを追って,もう少しわかりやすく説明しますと,

1,phpMyAdminに接続する
2,htaccessによるアクセス認証
3,htaccessで設定したアカウントとパスワードを入力
4,htaccessで認証をクリア
5,今度はphpMyAdmin自身によるhttp認証
6,MySQLのユーザー名とパスワードを入力
7,http認証による認証をクリア
8,phpMyAdminにアクセス

という二重の認証をやることになってしまっているわけです.

認証画面がでてIDパスを入れても認証画面が繰り返し出てくる状態です。

つまり,この状態は,上述の流れの4番まではクリアできていて,5番以降の認証で転んでいるということに当たると思います.なので,繰り返し出てくる認証画面にはMySQLのユーザー名とパスワードを入力すればするっと通ってしまうと思います.これでちゃんとうまくいくようなら,.htaccessは削除してしまいましょう.

ちょっとサイトのほうに説明が足りなかったですね.
何かしらの対策を考えてみます.

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : ishino @ 2009-06-18 10:29:04 編集 引用

namahageさま

こんにちは。返答ありがとうございます。お忙しいところ、お手数をおかけし申し訳ないです。

コメント後に再度考え直し、見直し、「もしかして…もしかして…」と思っていたのですが、やはり、そうだったのですね。

> .htaccessの設置は必要ありません.SABA_StartPackをインストールした際に設定した,MySQLのユーザー名rootとそのパスワードを入力すれば,そのまま接続できます.

.htaccessは必要ないのかな、どうなのかな、設置しておかないとヤバいかな、説明もあるしな、と思い始め、いろいろ自分で調べていくうちになんだか分からなくなってしまっていました。
本当にありがとうございました。助かりました。

その後順調に進める事ができています。

私はMac使用は10数年になりますが、いまだにOS9環境がメインで、OSXは時々使う程度。もちろんWEBもプログラミングもまったくわかりません。ですので、こちらのサイトは分かりやすく本当に助かっています。
きっと私のような方も大勢いることでしょう。

これからもいろいろ参考にさせていただき、勉強させていただこうと思います。
ありがとうございました。

PS.
> ちょっとサイトのほうに説明が足りなかったですね.何かしらの対策を考えてみます.
いやいや、恐縮です。でも、私のように「興味があってこれからはじめようとする人」は、書かれていることを忠実に再現しようとする方も多いのかもしれませんし、そこであまりにも簡単に進みすぎるのも考えもののような気もします。つまずいて考えて調べたりして、そうする事で知識も得られるだろうし。まあ、たまたま私がそこに引っかかっただけなんでしょうけれどね。

上でコメントされていた「素人さん」も、その後ここを見てくれているといいな。

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : heyhachi @ 2009-11-16 12:36:05 編集 引用

namahageさま

こんなに懇切丁寧に説明しているサイトを発見して涙です。
・・・なのにこんなに初歩的な質問で申し訳ないのですが

「"フォルダへ移動"ウィンドウが出ますので、/etc/httpd/に移動します。」

でファインダー>移動>フォルダへ移動で「/etc/httpd/」を入力しても
「フォルダが見つかりません」とだけ表示されて、先の作業に進めません。
MySQL、EntropyPHP、phpMyAdminも正常にインストールできたのですが・・・
ちなみに私はMacbook pro(10.5.8)です。
教えてください。
よろしくお願いします。

Re: .htaccessでphpMyAdminのアクセス制限をしよう

From : namahage @ 2009-11-16 19:24:09 編集 引用

heyhachiさんどうもこんにちは。
だいぶ古い情報になってきていますが、少しでもお役に立てていましたら嬉しい限りです。

Mac OS X10.5をお使いなのですね。私も以前、全く同じところでつまずきました。これはMac OS X 10.4以前と、Mac OS X10.5以降では、Webサーバー機能であるhttpdのバージョンが大きく変更されていることによります(10.4以前はApache1.3系、10.5以降はApache2.0系)。

その関係で、10.5以降では、

/etc/httpd/

から

/etc/apache2/

というフォルダに名前が変わってしまっています。
なのでFinderから呼び出すときも、/etc/apache2/でやるとうまくいくことになります。試してみてください。

補足ですが、
今、heyhachiさんは、おそらくphpMyAdminへのアクセスを制限するために.htaccessファイルを設置する作業をはじめているところだと思います。
このphpMyAdminへのアクセス制限方法ですが、ログのほうで紹介しているhtaccess認証形式よりは、より気楽な「http認証」に切り替えた方が心拍数が上がらず良いかもしれません。「http認証」はMySQLで作成したユーザー名とパスワードそのままで、phpMyAdminにアクセスできるというもので、管理もラクになります。設定の仕方は以下のような感じです。

phpMyAdminのconfig.inc.php(バージョンによっては名前が異なります)ファイルの以下の部分を

$cfg['Servers'][$i]['auth_type'] = 'config';

から

$cfg['Servers'][$i]['auth_type'] = 'http';

に変えればOKです.
これでphpMyAdminにアクセスすると,MySQLのユーザー名とパスワードそのままでログインできるようになります.とても便利ですが,MySQLのユーザー名とパスワードが漏れると怖いので,その辺はよく考えて使う方が吉です.

htaccessによる認証も使えるようにしておくと、今後何かと便利ではありますので、設定はしておいても良いかとは思います。一度試してみて、どちらがいいか考えてみるとおもしろいと思います。

このサイトも、Leopard以降の情報をあまり整理できていなくて、わかりにくくなっていますよね。そろそろ何とかしないとと思っています。

それではがんばってみてください。

Post Your Comment


*は入力必須です。E-Mailは公開されません。