エックスサーバのベーシック認証設定で.htpasswdのフルパス間違ちゃった話

スポンサードリンク  

エックスサーバで、MTの管理画面にベーシック認証かけようとして、ちょっと躓いたのでメモ。

基本的に作り方は他のサーバと一緒。
.htaccessと.htpasswdつくってサーバにあげるだけ。

.htaccess

<Files mt.cgi>
AuthUserFile /フルパス/.htpasswd
AuthGroupFile /dev/null
AuthName "Please enter your ID and password"
AuthType Basic
require valid-user
order deny,allow
</Files>

MTの管理画面入口はデフォ名がmt.cgiなので、1行めで指定。
2行目に.htpasswdの場所をフルパスで記述。

しかし何度やっても上手く行かず、パスワードの暗号化失敗してるのかと思って、他のサーバで試したけど、
他のサーバなら上手く行く。

ということでフルパスが違うのかと調べたら、違ってた。

エックスサーバのフルパスは、どうやらhome/ユーザ名/で始まるらしい。
今回、Winscpで右クリック>フルパスをクリップボードにコピー でフルパス取得してたんだけど、
これだと一番上がユーザ名になっちゃってて、それで.htpasswdを見つけられなかったらしい。

おまけ
フルパスの調べ方

 <?php
echo __FILE__;
?>

 
↑をテキストエディタに書いて、適当な名前.phpで保存。
調べたいディレクトリにほりこんでブラウザからアクセスしたら、フルパス取得してくれます。

おまけ2
.htpasswdの書き方
ID:PW
の形で書くだけ。
ただし、PWは暗号化するべし。

→→暗号化までしてくれる便利なジェネレータはこちら。
たまに使わせて頂いています。

スポンサードリンク

コメントを残す

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

※URLを複数含む場合、日本語がない場合などコメントができない場合があります。