KENT-WEB サポートコーナー 過去ログ [ 0103 ]


記事No: 13909
投稿日: 2015/04/10(Fri) 20:11:01
タイトルPasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

PasswordManagerのユーザー登録についての質問(ver3.5)

会員登録フォームにてユーザの登録ができないません。
送信ボタンを押すと「open err: /var/www/cgi-bin/.htpasswd」が出力される。

この結果から確認したこと
・check.cgiにてすべてOKであることを確認しました。
・html/member/sample.htmlへアクセスしBasic認証にてログインできることを確認
・check.cgiを編集※1しperlのopen関数を使用して読込までは、確認済み ※1




■環境
aws(Amazon Web Services)を使用
Apachやperlのインストールを実施

httpd.confに下記の設定を追加
<Directory "/var/www/cgi-bin">
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride All
Order allow,deny
Allow from all
Require all granted
RewriteEngine On
</Directory>

<Directory "/var/www/html/member">
Options Indexes FollowSymLinks ExecCGI Includes
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>

■変更点
sjis→UTF-8に変換

■プログラムの設置
/var/www
|--cgi-bin / (公開ディレクトリ:ウェブからアクセスできる領域)
| |--admin.cgi
| |--check.cgi
| |--.htpasswd
| |--index.html
| |--init.cgi
| |--lib
| | |--Jcode
| | | |--_Classic.pm
| | | |--Constants.pm
| | | |--H2Z.pm
| | | |--MIME
| | | | |--Base64.pm
| | | |--Nihongo.pod
| | |--Jcode.pm
| | |--Tr.pm
| | |--Unicode
| | |--Constants.pm
| | |--NoXS.pm
| |--pwlog.cgi
| |--pwlog_test.cgi
| |--pwmgr.cgi
| |--test.cgi / (テストのために作った)
| |--tmpl
| |--conf.html
| |--error.html
| |--.htaccess
| |--index.html
| |--mail.txt
| |--message.html
|--html
|--index.html
|--member / (アクセス制限するディレクトリ)
|--.htaccess
|--sample.html


▼パーミッションの設定
drwxrwxrwx. 4 root root 4096 Apr 10 05:32 .
drwxrwxrwx. 4 root root 31 Apr 2 22:21 ..
-rwx---rwx. 1 ec2-user ec2-user 15314 Apr 10 05:25 admin.cgi
-rwxrwxrwx. 1 ec2-user ec2-user 2589 Apr 10 05:08 check.cgi
-rw-rw-rw-. 1 ec2-user ec2-user 0 Apr 10 05:08 .htpasswd
-rwxrwxrwx. 1 root root 82 Apr 10 04:19 htpasswd.txt
-rwx---rwx. 1 ec2-user ec2-user 2852 Apr 3 05:48 index.html
-rwxrwxr-x. 1 ec2-user ec2-user 5079 Apr 9 01:30 init.cgi
drwxrwxr-x. 3 ec2-user ec2-user 33 Apr 10 05:45 lib
-rwxrwxr-x. 1 ec2-user ec2-user 1689 Apr 5 08:22 pwlog.cgi
-rwxrwxr-x. 1 ec2-user ec2-user 714 Apr 5 08:21 pwlog_test.cgi
-rwxrwxr-x. 1 ec2-user ec2-user 9161 Apr 5 08:42 pwmgr.cgi
-rwx---rwx. 1 ec2-user ec2-user 84 Apr 10 04:34 test.cgi
-rwxrwxrwx. 1 ec2-user ec2-user 3 Apr 10 03:24 test.txt
drwxrwxr-x. 2 ec2-user ec2-user 4096 Apr 10 05:32 tmpl

▼check.cgiの編集内容
if(!open(DAT,"$cf{pwdfile}")){
print "<li>入力モード Error\n"
} else {
print "<li>入力モード OK\n"
}

if(!open(DAT,"< $cf{pwdfile}")){
print "<li><入力モードError\n"
} else {
print "<li><入力モード OK\n"
}

close (DAT);
if(!open(DAT,"+< $cf{pwdfile}")){
print "<li>+<入出力モード Error\n"
} else {
print "<li>+<入出力モード OK\n"
}

if(!open(TS,"+</var/www/cgi-bin/test.txt")){
print "<li>+<入出力モード Error\n"
} else {
print "<li>+<入出力モード OK\n"
}


if(!open(DAT,"> $cf{pwdfile}")){
print "<li>>入出力モード(上書き) Error\n"
} else {
print "<li>>入出力モード(上書き) OK\n"
}

if(!open(DAT,"+< $cf{pwdfile}")){
print "<li>>出力モード (上書き) Error $cf{pwdfile}\n"
} else {
print "<li>>出力モード (上書き) OK\n"
}

if(!open(DAT,">> $cf{pwdfile}")){
print "<li>>>出力モード (追記) Error\n"
} else {
print "<li>>>出力モード (追記) OK\n"
}


記事No: 13910
投稿日: 2015/04/10(Fri) 20:50:26
タイトルRe: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

/var/www/cgi-bin/.htpasswdが開けないというエラーメッセージが出ているようですが
そこに.htpasswdはあるのでしょうか?

init.cgiの
$cf{pwdfile} =
の指定はどうなっていますか。


記事No: 13916
投稿日: 2015/04/12(Sun) 14:24:26
タイトルRe^2: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

> /var/www/cgi-bin/.htpasswdが開けないというエラーメッセージが出ているようですが
> そこに.htpasswdはあるのでしょうか?
>
> init.cgiの
> $cf{pwdfile} =
> の指定はどうなっていますか。

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

/var/www/cgi-bin/配下に.htpasswdは、あります。

また、init.cgi配下には、下記を設定しております。
/var/www/cgi-bin/.htpasswd

この設定でもopen errが出ている状況です。


記事No: 13919
投稿日: 2015/04/12(Sun) 19:55:21
タイトルRe^3: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

ユーザー登録ができないということは、.htpasswdはまだ空ということですね。
.htpasswdに何も書かれていないことを確認して

pwmgr.cgi 56行目あたり

# IDの重複チェック
my ($flg,@data);
の下に
if (!-e $cf{pwdfile}) { open(NEW,">$cf{pwdfile}");close(NEW); }

を追加してみたら
どうなります?


記事No: 13920
投稿日: 2015/04/12(Sun) 20:45:39
タイトルRe^4: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

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

.htpasswdへは、事前に登録しておいたので、空では、ないです。

事前登録したユーザでのログインができることは、確認済みです。

今やったこと ★と☆の間にhirayamaさんの助言通り入れてみましたが、結果は、変わりませんでした。

★my ($flg,@data);

☆open(DAT,"+< $cf{pwdfile}") or &error("open err: $cf{pwdfile}");

私の想定では、admin.cgiの485行目の下記の部分で原因になっていると考えます。

ちなみに、openの+<を消せば読込専用となるため、エラーにはななりませんでした。
もちろん登録されないですが・・・・・・・

open(DAT,"+< $cf{pwdfile}") or &err("open err: $cf{pwdfile}");


助言があれば、教えて頂きたいです。


記事No: 13923
投稿日: 2015/04/13(Mon) 02:48:58
タイトルRe^5: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

>私の想定では、admin.cgiの485行目の下記の部分で原因になっていると考えます。
管理メニューの会員登録フォームですか。
index.htmlの会員登録フォームと勘違いしていました。

$cf{memfile}で指定したmember.datへの書き込みはできるのでしょうか。
管理メニューの会員管理(修正/削除)メニューから
名前やE-mailを変更できますか。


記事No: 13925
投稿日: 2015/04/13(Mon) 09:23:10
タイトルRe^6: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

会員管理(修正/削除)メニューにて.htpasswdファイルへの書込みも同様に「open err:/var/www/cgi-bin/.htpasswd」が出力されます。
ディレクトリの階層とパーミッションの設定値です。

■プログラムの設置
/var/www
|--cgi-bin / (公開ディレクトリ:ウェブからアクセスできる領域)
| |--admin.cgi
| |--check.cgi
| |--.htpasswd
| |--index.html
| |--init.cgi
| |--lib
| | |--Jcode
| | | |--_Classic.pm
| | | |--Constants.pm
| | | |--H2Z.pm
| | | |--MIME
| | | | |--Base64.pm
| | | |--Nihongo.pod
| | |--Jcode.pm
| | |--Tr.pm
| | |--Unicode
| | |--Constants.pm
| | |--NoXS.pm
| |--pwlog.cgi
| |--pwlog_test.cgi
| |--pwmgr.cgi
| |--test.cgi / (テストのために作った)
| |--tmpl
| |--conf.html
| |--error.html
| |--.htaccess
| |--index.html
| |--mail.txt
| |--message.html
|--html
|--index.html
|--member / (アクセス制限するディレクトリ)
|--.htaccess
|--sample.html

▼パーミッションの設定
drwxrwxrwx. 4 root root 4096 Apr 10 05:32 .
drwxrwxrwx. 4 root root 31 Apr 2 22:21 ..
-rwx---rwx. 1 ec2-user ec2-user 15314 Apr 10 05:25 admin.cgi
-rwxrwxrwx. 1 ec2-user ec2-user 2589 Apr 10 05:08 check.cgi
-rw-rw-rw-. 1 ec2-user ec2-user 0 Apr 10 05:08 .htpasswd
-rwxrwxrwx. 1 root root 82 Apr 10 04:19 htpasswd.txt
-rwx---rwx. 1 ec2-user ec2-user 2852 Apr 3 05:48 index.html
-rwxrwxr-x. 1 ec2-user ec2-user 5079 Apr 9 01:30 init.cgi
drwxrwxr-x. 3 ec2-user ec2-user 33 Apr 10 05:45 lib
-rwxrwxr-x. 1 ec2-user ec2-user 1689 Apr 5 08:22 pwlog.cgi
-rwxrwxr-x. 1 ec2-user ec2-user 714 Apr 5 08:21 pwlog_test.cgi
-rwxrwxr-x. 1 ec2-user ec2-user 9161 Apr 5 08:42 pwmgr.cgi
-rwx---rwx. 1 ec2-user ec2-user 84 Apr 10 04:34 test.cgi
-rwxrwxrwx. 1 ec2-user ec2-user 3 Apr 10 03:24 test.txt
drwxrwxr-x. 2 ec2-user ec2-user 4096 Apr 10 05:32 tmpl


記事No: 13926
投稿日: 2015/04/13(Mon) 11:35:39
タイトルRe^7: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

>会員管理(修正/削除)メニューにて.htpasswdファイルへの書込みも同様に「open err:/var/www/cgi-bin/.htpasswd」が出力されます。

削除やパスワード変更では$cf{pwdfile}への書き込みをしてしまうので、
名前やE-mailの変更を試してください。


記事No: 13927
投稿日: 2015/04/13(Mon) 12:32:24
タイトルRe^8: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

同様に「open err: /var/www/html/private/member.dat」が出ています。
member.datファイルの存在確認もしましたが、書き込めないようです。

■パーミッションの設定
-rw-rw-r--. 1 ec2-user ec2-user 628 Apr 3 06:23 index.html
-rw-rw-rw-. 1 ec2-user ec2-user 35 Apr 12 22:13 member.dat
-rw-rw-rw-. 1 ec2-user ec2-user 0 Apr 2 04:44 pwlog.dat


記事No: 13928
投稿日: 2015/04/13(Mon) 13:34:34
タイトルRe^9: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

ディレクトリ構成図を見ると、
tmplディレクトリ内にあるべき
conf.html error.html .htaccess index.html mail.txt message.html
がcgi-bin ディレクトリ内にあるように書いてありますが、実際はどうなっていますか。


記事No: 13929
投稿日: 2015/04/13(Mon) 13:47:47
タイトルRe^10: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

tmp配下のディレクトリです。

貼り付けると ずれるようですね

/var/www
|--cgi-bin
|  |--admin.cgi
|  |--.admin.cgi.swp
|  |--check.cgi
|  |--.htpasswd
|  |--index.html
|  |--init.cgi
|  |--lib
|  |  |--Jcode
|  |  |  |--_Classic.pm
|  |  |  |--Constants.pm
|  |  |  |--H2Z.pm
|  |  |  |--MIME
|  |  |  |  |--Base64.pm
|  |  |  |--Nihongo.pod
|  |  |--Jcode.pm
|  |     |--Tr.pm
|  |     |--Unicode
|  |        |--Constants.pm
|  |        |--NoXS.pm
|  |--pwlog.cgi
|  |--pwlog_test.cgi
|  |--pwmgr.cgi
|  |--test.cgi
|  |--test.txt
|  |--tmpl
|     |--conf.html
|     |--error.html
|     |--index.html
|     |--mail.txt
|     |--message.html
|--html
   |--index.html
   |--member
   |  |--.htaccess
   |  |--sample.html
   |--private
      |--index.html
      |--member.dat
      |--pwlog.dat


記事No: 13930
投稿日: 2015/04/13(Mon) 14:08:18
タイトルRe^11: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

deny from allが記載されている.htaccessがcgi-bin内にあるならそのせいかなとも思いましたが
違うようですね。

/var/www/cgi-bin/でも/var/www/html/private/でもファイルの書き込みが
できないとなると、サーバーの問題かもしれません。

簡単な掲示板CGIを設置してそれで書き込みができるか試してみてください。


記事No: 13931
投稿日: 2015/04/13(Mon) 14:24:48
タイトルRe^12: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

aws(Amazon Web Services)なので、サーバーの問題とは、別だと考えています。

サーバー側の問題であれば、httpd.confを修正することで問題は解決するのでしょうか?


<IfModule alias_module>
  ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
</IfModule>
<Directory "/var/www/cgi-bin">
  Options Indexes FollowSymLinks ExecCGI Includes
  AllowOverride All
  Order allow,deny
  Allow from all
  Require all granted
  RewriteEngine On
</Directory>

<Directory "/var/www/html/member">
  Options Indexes FollowSymLinks ExecCGI Includes
  AllowOverride All
  Order allow,deny
  Allow from all
  Require all granted
</Directory>


記事No: 13932
投稿日: 2015/04/13(Mon) 15:43:27
タイトルRe^13: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

>サーバー側の問題であれば、httpd.confを修正することで問題は解決するのでしょうか?
サーバーの問題ならここではサポート外です。
サーバー管理者に問い合わせてください。

しかし、その前に書き込みがほんとうにできないのか
他のCGIで確認した方がいいと思います。


記事No: 13933
投稿日: 2015/04/13(Mon) 16:17:01
タイトルRe^14: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

簡単なcgiを作成し実行してみました。
結果は、2通りです。

cgiをサーバー側から直接実行すると、成功
webから直接実行すると、書込みエラーで失敗


記事No: 13934
投稿日: 2015/04/13(Mon) 17:19:29
タイトルRe^15: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

> cgiをサーバー側から直接実行すると、成功
> webから直接実行すると、書込みエラーで失敗
どういう意味ですか。


記事No: 13935
投稿日: 2015/04/13(Mon) 18:17:55
タイトルRe^16: PasswordManagerのユーザー登録についての質問(
ID情報: ayataka
投稿者: ayataka
URLhttp://ec2-52-68-93-107.ap-northeast-1.compute.amazonaws.com/cgi-bin/admin.cgi

> > cgiをサーバー側から直接実行すると、成功
> > webから直接実行すると、書込みエラーで失敗
> どういう意味ですか。

説明が下手ですみません。
2行の意味は、簡単なファイル書込みプログラムを作成し、異なる起動方法でcgiプログラムを実行しました。

1.cgiをサーバー側から直接実行する
→テラタームでサーバーにログインし、
 コマンドにて「perl XXXX.cgi」を実行し
 書込みが出来ることを確認

2.IEにてURLを指定し「http://サーバー/XXXX.cgi」を実行し
  書込みが出来ないことを確認


記事No: 13936
投稿日: 2015/04/13(Mon) 18:34:09
タイトルRe^17: PasswordManagerのユーザー登録についての質問(
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

普通はは2の方法で動かすと思うので、
やはりCGIでの書き込みができていないということになりますね。
サーバー管理者に問い合わせてください。


[検索ページ] [掲示板]