ID登録せずに、ニックネームで質問できる♪教えて!gooアプリ

当方Apache2.2.9にてWebサーバーを構築しております。

実験にてBasic認証を試してみたいのですが、どうしても
うまくいきません。

/home/server/.htpasswdを作って
/var/www/html/に.htaccessを設置しております。

.htaccessの内容は以下の通りです。

AuthType Basic
AuthName "AUTHORIZED AREA"
AuthUserFile /home/server/.htpasswd
Require valid-user

/var/www/html/以下のHTMLにブラウザからアクセスすると
認証プロンプトは表示されるのですが、認証されません。
USERとPASSは絶対に間違っておりません。

エラーログを見てみたところ下記のログがありました。
(13)Permission denied: Could not open password

しかし、/home/server/.htpasswdのパーミッションは604に
設定してあります。

何かおかしい点はございますでしょうか?
どうか教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (6件)

#4補足



/home/server/
のパーミッションを
755にしてみてください。
    • good
    • 0

Basic認証の設定は簡単ですし、投稿内容の設定で基本的にOKだと思います。


やはりエラーログのとおり/home/server/.htpasswdに原因があるのでは、と思います。
あらためて作り直してはどうでしょうか。

念のための確認ですが .htaccessのパーミッションも644でしょうか。
また、「認証無し」の場合は正常に動作できているのでしょうか。
    • good
    • 0

追加で


/home/server/
のパーミッションは?

この回答への補足

/home/server/のパーミッションは744となっております。

補足日時:2009/05/29 16:42
    • good
    • 0

すべてのユーザーに対する読み取り権限をOKにするように


/home/server/.htpasswdのパーミッションを644(または444)にしてみるとどうなりますか。

この回答への補足

644 444の両方を試してみましたが以前変化はございませんでした。

補足日時:2009/05/29 16:40
    • good
    • 0

SELinuxが有効になってるなら無効にしてみるとか。

この回答への補足

SELinuxはDisabledとなっておりました。

補足日時:2009/05/29 16:40
    • good
    • 0

Requireディレクティブにユーザー名を記述する方法ではどうなりますか?


例:
Require user user1 user2

この回答への補足

ご回答ありがとうございます。

ご指摘の通り編集してみたのですが、以前エラーログに
変化はございませんでした・・・

補足日時:2009/05/29 14:09
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aと関連する良く見られている質問

Qpingでポートの指定

pingでIPアドレスを指定して、通信できるかどうかというのは
よく使いますが、pingでポートを指定して応答するかどうかは調べられるのでしょうか?

よろしくお願いします

Aベストアンサー

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含むICMP)ではできません。

FTPの疎通確認であれば、クライアントからサーバに対するTCP/21通信(FTP-CMD)が可能であること(サーバからクライアントへのTCP/21からの応答を含む)+サーバからクライアントに対するTCP/20通信(FTP-DATA)が可能であること(クライアントからサーバへのTCP/21からの応答を含む)が必要でしょう。

監視ソフトによるものであれば、
・クライアントからサーバへのログイン(TCP/21)
・クライアントからサーバへのlsの結果(TCP/20)
で確認すればよいでしょう。

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含む...続きを読む

Qapt-get install ****** でinstallしたものをuninstallするには?

御世話になります。
vncserverだけをinstallするつもりが
誤って
apt-get install vncとうってしまいました。
これをuninstallしたいのですが
どのようにすればよろしいでしょうか?

教えて下さい。

Aベストアンサー

# apt-get remove パッケージ名
では、設定ファイルは削除されずに残ります。

完全に削除するときは、
# apt-get --purge remove パッケージ名
です。

Qディレクトリ名の検索方法が知りたい

例えば、"bin"を検索すると、"/usr/bin"、"/usr/local/bin"を表示するようなコマンドはありませんか?

Aベストアンサー

/usr/bin
/usr/local/bin
...

の形式を出力するだけなら、

find / -name "bin" -type d
または
find / -name "bin" -type d -print

でよいと思います。

QPermission denied in

PHPを実行するとWarning: fopen failed to open stream Permission denied inと
表示されてしまいます。
インターネットを使い、調べてはいますが、
上記のように表示してしまいます。
ファイルです。パーミッションは606にしました。

このWarningを表示させないようにするには、どのようにすれば
良いのか教えて頂けると嬉しいです。

Aベストアンサー

あとは
> PHPを実行するユーザーとそのグループはどうなってますか?

PHPを直接コマンドラインから実行するのなら、ユーザーはあなたですが、httpサーバーでモジュールやCGIとして実行するなら別の権限(nobodyとか)になっていると思います。

あとは
ディレクトリのパーミッションを 707 にする
ディレクトリとファイルのオーナーをPHPを実行するユーザーにする
とかでしょうか。

Qillegal string offset

php5.3では動いていたプログラムをphp 5.4 で動かしたらwarning illegal string offsetが出て困っています。以下のプログラムでwarningが出ないようにするにはどのようにコーディングすればよいのでしょうか?


$a = array('exists' => 'foo');
if ($a['exists']['non_existent']) {
print 1;
}
print 2;
exit;

Aベストアンサー

isset()を使えばいいと思います

Qインストールされているディレクトリを知るコマンドはありませんか?

phpのconfigerをするのに、
phpのインストールされているパスへ移動しなくてはいけませんが、
phpがどこにインストールされているかわかりません。

 rpm -qf php-4.0.6-7

とすると

 エラー: ファイル php-4.0.6-7: そのようなファイルやディレクトリはありません

と表示されてしまうのです。
rpmのサイトを見てオプションを設定して表示された結果から
ディレクトリを移動しても
コンフィギャーできるところに辿り着きませんでした。

どうしたらインストールされているディレクトリを
知ることができるでしょうか?

OSは以下の通りです。
AIX Version 4 もしくは LASER5 Linux release 7.2

今月が納期で生じたバグ対応のため大変困っています。
質問場所が違っていたら申し訳ないですが、
よろしくお願いいたします。

Aベストアンサー

Laser5に限っての話ですが、標準のインストールでphpはインストールされるはずですが。

# rpm -qa | grep -i php

でphpのパッケージ名は表示されませんか?

findを実行した結果、

php(コマンド)
libphp4.so(ライブラリ)
php.ini(設定ファイル)

等も見つからないのでしょうか?
もしそうならphpはパッケージもソースでもインストールされていない可能性があります。

Q「該当」と「当該」の違い

辞書には、「該当」・・・その条件にあてはまること。「当該」・・・その事に関係がある。
・・・とあります。
“あてはまる”と“関係がある”、微妙に違うようで似ているようで、お恥かしいのですが私にははっきり区別ができないのです。
該当とすべきところを当該としたら、意味はまったく違ってくるでしょうか?
わかりやすく両者の違いや使い方を解説していただけませんか?宜しくお願いします。

Aベストアンサー

よく似た意味の言葉(名詞)ですが、

○該当…「する」をつけて「当てはまる」という意味の動詞として用いることができる

○当該…主に他の名詞の前につけて「今議論の対象になっている、まさにそのもの」という意味で内容を限定する形容詞的な形で用いる

といった違いがあります。逆の用法はありません。

・この条件に当該する人は申し出てください。

・○○事件につき、該当被告人を有罪に処す。

いずれもおかしな使い方で、反対でないとアウトです。

ご参考になれば幸いです。

QPostfixでメールがおくれない。

こんにちは,
今Postfixでメールを送ろうと思っています。

内部へのメールと外部へのメールを送りたいのですが,

$mail user1
Subject: test
test sentence.
.
CC:
$

としても
user1のメールメッセージには送られておらず,また,

$mail user1.goo.ne.jp
Subject: test
test sentence.
.
CC:
$

としてもuser1.goo.ne.jpに届いていません。

おそらく,/var/log/maillogをみると,
PCNAME postfix/smtp[18514]: 065A92683C3: to=<user1@PCNAME>, relay=none, delay=10, status=deferred (Host or domain name not found. Name service error for name=PCNAME type=MX: Host not found, try again)

とかいてあるので,DNSサーバーとかの設定がたりないか,main.cfの設定がたりないのかと思います。

どうすればよろしいでしょうか。
初心者質問で申し訳ありません。よろしくお願いします。

こんにちは,
今Postfixでメールを送ろうと思っています。

内部へのメールと外部へのメールを送りたいのですが,

$mail user1
Subject: test
test sentence.
.
CC:
$

としても
user1のメールメッセージには送られておらず,また,

$mail user1.goo.ne.jp
Subject: test
test sentence.
.
CC:
$

としてもuser1.goo.ne.jpに届いていません。

おそらく,/var/log/maillogをみると,
PCNAME postfix/smtp[18514]: 065A92683C3: to=<user1@PCNAME>, relay=none, delay=10, status=defer...続きを読む

Aベストアンサー

>(Host or domain name not found. Name service error for name=PCNAME type=MX:
  Host not found, try again)

エラーメッセージのとおりですね。
Postfixが配送先のMXレコードを、DNSに問い合わせても解決しなかったようです。

メールアドレスの「@」の右側は、普通はドメイン名(###.jp)なので、
SMTPサーバ(Postfix、Sendmailなど)は
ドメイン名(###.jp)から、そのドメインのメールサーバ名(mail.###.jpなど)
を知る必要があります。(MX:MailExchangeの解決)

そのためSMTPサーバはDNSに問い合わせてMXレコードから送るべきメールサーバ名を得ます。
ちなみに、MXレコードが得られなかったら、###.jpをメールサーバ名と判断して
送信しようとします。


まずはPostfixの設定以前に、そのサーバで、ちゃんとDNSサーバが指定されて
名前解決できているか、など確認してください。

/etc/resolv.confファイルの見直し
digコマンドでDNSに問い合わせる
ルータ・FWなどでDNSへの問い合わせをが拒否されていないか?

など、うまく動かない原因はいくらでも思いつきます。

>(Host or domain name not found. Name service error for name=PCNAME type=MX:
  Host not found, try again)

エラーメッセージのとおりですね。
Postfixが配送先のMXレコードを、DNSに問い合わせても解決しなかったようです。

メールアドレスの「@」の右側は、普通はドメイン名(###.jp)なので、
SMTPサーバ(Postfix、Sendmailなど)は
ドメイン名(###.jp)から、そのドメインのメールサーバ名(mail.###.jpなど)
を知る必要があります。(MX:MailExchangeの解決)

そのためSMTPサー...続きを読む

Qポートの80と443

こちらのサービス(https://secure.logmein.com/)を利用すると、インターネットを見られるサーバーのポートの80と443が空いていればルータやファイアウォールに特段の設定なく外部からサーバーを操作できるそうですが、逆にサーバーのポートの80や443を空けることには何か危険性があるのでしょうか。

Aベストアンサー

ポート80は一般的なHTTP、ポート443はHTTPSです。
この2つのポートがあいていなければインターネット接続(WEBブラウジング)は出来ません。
ですから、ほとんどのファイアウォールでこのポートは開いています。(インターネット接続を制限している社内LANでは当然閉じていますが)

ちなみに、よく使うポートとしてはFTPで20、21、SMTP(送信メール)で25、受信メールPOP3で110あたりです。セキュリティポリシー上、この辺は制限される事も多いですが、HTTP 80、HTTPS(暗号化用)443は通常閉じません。


危険性?
WEBプロトコルを使ってFTP的なファイル転送(WebDAV)やVPN等も出来るようになっています。当然そこにはある種の危険はつきものですが、WEBブラウジングに伴う危険と大きく変わりません。ウィルス等に感染していればこの2つのポートだけでも相当危険でしょうね。

参考まで。

Q「Forbidden」が表示されWebページが見れない

 あるページを開こうとすると
「Forbidden
You don't have permission to access /***/ on this server.

Additionally, a 403 Forbidden error was encountered while trying to use an ErrorDocument to handle the request.」
(/***/は任意の名前)
が表示され閲覧できません。相手側に問題があると思うのですが、このメッセージは何を意味するのでしょうか?

Aベストアンサー

こんばんわ。

403エラーは閲覧者にアクセス権が無いことを示します。

>相手側に問題があると思うのですが
確かに相手側の問題(ASPサーバの設定ミス等)の可能性もありますが
わざと403が出るよう設定している可能性もあります。
そういったページは、一般の訪問者に見られないように
パスワードを掛けているページだったり、
サーバの負荷低減の為に特定の操作を禁止していたりします。

参考URLにサーバエラーについてが記述されていますので
ご興味があれば見てみると良いでしょう。

参考URL:http://human-dust.kdn.gr.jp/doujin/net/errormsg.html


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング