質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

87.92%

htaccsessが、うまくいきません。

受付中

回答 4

投稿

  • 評価
  • クリップ 0
  • VIEW 2,094
退会済みユーザー

退会済みユーザー

htaccsessが、うまくいきません。
認証画面は出るのですが、何度ただしいID,PWを入れても、500エラーになります。

フルパス
http://URL/portfolio/index.html

下記三つのファイルはindex.htmlと同じフォルダ内にあります。

.htaccessの中身

AuthUserFile /home/vol4_7/lv9.org/lv9_ID/htdocs/portfolio/.htpasswd
AuthGroupFile /dev/null
AuthName "Input ID and Password."
AuthType Basic
require valid-user
<Files ~ "^.(htpasswd|htaccess)$">
    deny from all
</Files>

.htpasswdの中身

portfolio:7890

(PWの暗号化もできますが、暗号化したものは意味不明な文字列になっていますが、
それでも正しい数値を打てばよいのですよね。なぜサーバは暗号化した情報が解読できるのでしょうか?暗号化は他のサイトで行うのにわかるのですかね?
もちろん確認のためあえて平文で今回は行っています。)

_____________________

phpinfo.phpの中身
VH_PATH
/home/vol4_7/lv9.org/lv9_ID/htdocs

・パーミッション777にしてもだめでした。

・サーバはhtaccsessは使えると記載があります。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • kaz.Suenaga

    2016/06/08 09:55

    それよりも上の階層で、別の .htaccess ファイルがあったりしませんか。

    キャンセル

  • 退会済みユーザー

    退会済みユーザー

    2016/06/08 17:27

    上の層にはもちろんありません。

    キャンセル

回答 4

+1

Apache の標準的な BASIC 認証の話ですよね?

Apache httpd サーバーは、ハッシュ化(暗号化と言われていますか暗号化ではないです)されたパスワードを解読しているのではなくて、入力ダイアログで入力されたパスワードをハッシュ化して、ファイルに保存されているパスワードと照合しています。

そのため、Apache の BASIC認証では、.htpasswd ファイルに記載される「パスワード」は、htpasswd コマンドで、ハッシュ化された形式でパスワードを記載しておく必要があります。

今回の場合、

htpasswdの中身
portfolio:7890

もちろん確認のためあえて平文で今回は行っています。

と書かれていますが、.htpasswd に記載されたパスワードが、平文の状態だと、入力したパスワードをハッシュ化した結果が、7890 と一致しないと ログインできません。

.htpasswd は、htpasswd コマンドで、作成・追加するようにしてください。

もし、htpasswd コマンドが使えない場合は、.htpasswd ファイルを生成してくれる webサイトがありますので、利用して生成してください。

htpasswd コマンドのマニュアル
https://httpd.apache.org/docs/2.4/ja/programs/htpasswd.html

.htpasswd ファイルを作成してくれるサイトの一例
http://www.luft.co.jp/cgi/

(PWの暗号化もできますが、暗号化したものは意味不明な文字列になっていますが、 それでも正しい数値を打てばよいのですよね。なぜサーバは暗号化した情報が解読できるのでしょうか?暗号化は他のサイトで行うのにわかるのですかね? 

ハッシュを生成するアルゴリズム(ルール)は、決まっているので、同じアルゴリズムを使っているプログラムの場合は、どこのサーバーで生成しても同じ文字列になります。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/06/07 14:47

    お返事遅れてすみません
    むしろ平文じゃいけないのですね

    キャンセル

  • 2016/06/07 22:31

    500 Error, please check your php script / enable display_errors in your cpanel

    とやはり出てしまいます。

    portfolio:WD5d4dzd4FmtkとPWのファイルを変更してもやはりだめでした。

    認証の画面は出てくるので、PW、htaccsessのフルパスファイル名に問題がないということで良いでしょうか?

    キャンセル

0

500エラーということは認証周りではなくスクリプト周りの問題なのではないでしょうか?apacheのerror.log等になにか出力されていませんか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/06/08 09:37

    lv9の仕様を見た限り、ftpでは接続できるようなので、どこかのフォルダにログファイルがあるかもしれません。htdocsより上の階層はftpで見ることができますか?
    また、どうやってhtaccessやhtpasswdをアップロードしていますか?ローカルで書いてftpでアップロードですか?

    キャンセル

  • 2016/06/08 09:50

    サブライムを使っています。
    確認したところ左下の文字コードの所がASCIIになっています。
    自分で設定したことはないですが、もしかしてコピペもとのページがこの文字コードだったのでしょうか?

    サブライム3のFTPをつかってアップロードしています。

    キャンセル

  • 2016/06/08 10:04

    下記のようなlogフォルダの中のファイルはありましたが、4月までしか見つかりませんでした。

    中身
    Fri, 29 Apr 2016 03:45:27 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/close.png
    Fri, 29 Apr 2016 03:45:37 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/loading.gif
    Fri, 29 Apr 2016 03:45:37 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/prev.png
    Fri, 29 Apr 2016 03:45:37 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/next.png
    Fri, 29 Apr 2016 04:46:26 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/yufu/favicon.ico
    Fri, 29 Apr 2016 04:46:26 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/close.png
    Fri, 29 Apr 2016 04:46:26 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/loading.gif
    Fri, 29 Apr 2016 04:46:26 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/prev.png
    Fri, 29 Apr 2016 04:46:26 -0500 AH00128: File does not exist: /home/vol4_7/lv9.org/lv9_/img/next.png

    キャンセル

0

.htaccessファイルの改行コードはLFになっていますか?

あと、関係ないかもしれませんが
<Files ~ "^.(htaccess|htpasswd)$">
ピリオドの前に"\"が抜けていませんか?

<Files ~ "^\.(htaccess|htpasswd)$">

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/06/08 09:48

    <Files ~ "^.(htpasswd|htaccess)$">
    deny from all
    </Files>
    はまちがっていて下記が正しいのですね。コピペで作ったのですが、元が間違っていたのですね。
    <Files ~ "^\.(htpasswd|htaccess)$">
    deny from all
    </Files>

    サブライムを使っています。
    確認したところ左下の文字コードの所がASCIIになっています。
    自分で設定したことはないですが、もしかしてコピペもとのページがこの文字コードだったのでしょうか?

    キャンセル

0

サーバへhtaccessやhtpasswdを転送されているツールはSublime3のSFTPプラグインでしょうか?
見たところそのプラグインはテキスト転送モードとバイナリ転送モードの区別がないようなので、改行コードの違いによって起きているのかもしれません。Linux上での改行コードはLF(0x0A)、Windows上での改行コードはCRLF(0x0D0A)なので、そのままのバイナリをアップロードするとLinux上で読み込むのに不都合が起きます。Sublimeの設定で改行コードをunix用にすることもできますが、全てのファイルの改行コードが変わってしまうため、普段使いしているSublimeの設定そのものを変更することはおすすめしません。

これらの改行コードの問題を解決するには、テキスト転送モードを使えるFTPクライアントソフトを使って転送するべきです。よく使われているツールはこれとかでしょうか。
・FFFTP(テキスト転送、バイナリ転送を拡張子で指定できる)
http://forest.watch.impress.co.jp/library/software/ffftp/
・WinSCP(ある程度勝手にテキスト、バイナリを識別してくれる)
https://winscp.net/eng/download.php

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/06/08 17:43

    http://www.php-labo.net/setup/basis/upload.htmlのページの下部にある赤文字Aアイコンを押して選択してから、PWとhtaccsessファイルを上書きアップロードしましたが、やはり認証画面は出てきますが、入力しても500になりました。

    入力の際はもちろんハッシュ化していない平文のPWでいいのですよね。

    キャンセル

  • 2016/06/08 17:47

    そもそも
    phpinfo.phpの中身とFFFTPの時のパスが違うのが気になります。

    ・phpinfo.php
    VH_PATH
    /home/vol4_7/lv9.org/lv9_ID/htdocs


    ・FFFTP
    /htdocs/

    キャンセル

  • 2016/06/08 17:48

    そもそも
    phpinfo.phpの中身とFFFTPの時のパスが違うのが気になります。

    ・phpinfo.php
    VH_PATH
    /home/vol4_7/lv9.org/lv9_ID/htdocs


    ・FFFTP
    /htdocs/

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 87.92%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る