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


記事No: 11976
投稿日: 2013/06/14(Fri) 16:58:37
タイトルWEB PROTECTについて
ID情報: YKUKU
投稿者: IISサーバー利用者
URLhttp://localhost/

URLはIISのため決定しておりません。
さっそくなんですが、WEB PROTECTがうまく動作しません。
check.cgiでは以下の通り結果が出ます。
なお、sendmailは設置していません。

Check Mode: [ Web Protect v4.33 ] 会員ファイル位置: OK
会員ファイルパーミッション: OK
パスワードファイル位置: OK
パスワードファイルパーミッション: OK
アクセス履歴ファイル位置: OK
アクセス履歴ファイルパーミッション: OK
テンプレートディレクトリ位置 : OK
隠しディレクトリ位置 : OK
セッションディレクトリ位置 : OK
セッションディレクトリパーミッション : OK
sendmail位置 : NG

そして、admin.cgi、enter.cgiは動作するのですが、うまくtop.htmlに飛ばないのです。
どうすればいいのでしょうか?

以下、init.cgiです。
#=====================================================================
# ▼設定項目
#=====================================================================

# 管理用パスワード
$cf{password} = 'manege@Login';

# パスワード発行形態
# 1 : ユーザからの発行&メンテを可能にする
# 2 : 発行は管理者のみ。ユーザはメンテのみ
# 3 : 発行&メンテは管理者のみ(index.htmlは不要)
$cf{pwd_regist} = 3;

# 管理者メールアドレス
# → $cf{pwd_regist} = 1; のとき
$cf{master} = 'xxx@xxx.xx';

# sendmailパス【サーバパス】
# → $cf{pwd_regist} = 1; のとき
$cf{sendmail} = '/usr/lib/sendmail';

# sendmailの -fオプション
# → サーバ仕様で必要な場合
$cf{sendm_f} = 0;

# 認証後の有効時間(分)
# → 初期ログインしてからの有効時間
$cf{job_time} = 60;

# 隠しファイル(トップ)
# → ""の中にファイル名のみを記述
${$cf{secret}}[0] = "top.html";

# 以下は隠しファイル(次ページ以降分)
# → [1][2][3]... と続ける。""の中にファイル名のみを記述。
# → CGIの場合はhttp://から記述する。
${$cf{secret}}[1] = "file1.html";
${$cf{secret}}[2] = "file2.html";
${$cf{secret}}[3] = "file3.html";

# バイナリファイル
# → キー(左方)はパラメータ
# → 値(右方)は順に、「ヘッダー」「拡張子」をコンマで区切り
$cf{binary} = {
gif => "image/gif,gif",
jpeg => "image/jpeg,jpg",
pdf => "aplication/pdf,pdf",
excel => "application/ms-excel,xls",
};

# 隠しディレクトリ【サーバパス】
# → 外部から直接アクセスできない場所のほうがよい
$cf{prvdir} = './private';

# セッションディレクトリ【サーバパス】
$cf{sesdir} = "./ses";

# パスワードファイル【サーバパス】fHdlb7hZ
$cf{pwdfile} = './data/.htpasswd';

# アクセス履歴ファイル【サーバパス】
$cf{logfile} = './data/.axslog';

# 会員ファイル【サーバパス】
$cf{memfile} = './data/.member';

# テンプレートディレクトリ【サーバパス】
$cf{tmpldir} = "./tmpl";

# 本体プログラムURL【URLパス】
$cf{protect_cgi} = './protect.cgi';

# 入室プログラムURL【URLパス】
$cf{enter_cgi} = './enter.cgi';

# 登録プログラムURL【URLパス】
$cf{manager_cgi} = './manager.cgi';

# 管理プログラムURL【URLパス】
$cf{admin_cgi} = './admin.cgi';

# 最大受理サイズ
# → プログラムとして受理可能なサイズ
# → Byteで指定する [例] 1024 = 1KB
$cf{maxdata} = 10240;

# アクセスログ最大保持数
$cf{max_log} = 300;

# 1ページ当り会員表示件数(管理画面)
$cf{pg_max} = 10;

# ユーザ登録アクセス制限(半角スペースで区切る)
# → 拒否するホスト名又はIPアドレスを記述(アスタリスク可)
# → 記述例 $deny = '*.anonymizer.com 211.154.120.*';
$cf{deny} = '';

# ホスト取得方法
# 0 : gethostbyaddr関数を使わない
# 1 : gethostbyaddr関数を使う
$cf{gethostbyaddr} = 0;

# パスワード発行形態をユーザ操作にした場合の完了画面の戻り先【URLパス】
$cf{back_url} = "../index.html";

#=====================================================================
# ▲設定完了


記事No: 11979
投稿日: 2013/06/15(Sat) 05:36:24
タイトルRe: WEB PROTECTについて
ID情報: kent
投稿者: KENT

> URLはIISのため決定しておりません。
> さっそくなんですが、WEB PROTECTがうまく動作しません。
> check.cgiでは以下の通り結果が出ます。
> なお、sendmailは設置していません。

ファイル構成や位置も書かれていないため、回答できないですね。
「うまく動作しません」とは、具体的にはどのような現象になるのでしょう?


記事No: 11983
投稿日: 2013/06/15(Sat) 13:06:05
タイトルRe^2: WEB PROTECTについて
ID情報: YKUKU
投稿者: IISサーバー利用者

> > URLはIISのため決定しておりません。
> > さっそくなんですが、WEB PROTECTがうまく動作しません。
> > check.cgiでは以下の通り結果が出ます。
> > なお、sendmailは設置していません。
>
> ファイル構成や位置も書かれていないため、回答できないですね。
> 「うまく動作しません」とは、具体的にはどのような現象になるのでしょう?
申し訳ございません。
enter.cgiにアクセス、パスワードの入力を行い、ログインをしようとすると、IEに localhostの待機中… と出たままどれだけ待ってもtop.htmlに飛ばないのです。また、この状態でprotect.cgiにアクセスしても
タイムアウトです。再度ログインしてください。
と出て動作しません。

なお、ファイル構成は C:/inetpub/wwwroot/ 内にパターン1の方法で設置し、 wwwroot内直下に本体プログラムであるcgiを一式設置しています。
(パターン1のままだとcheck.cgiでエラーが出るため、init.cgiのサーバーパスを書き換えなければならないのですが、指定方法がわからなくて、、)


記事No: 11985
投稿日: 2013/06/16(Sun) 08:03:20
タイトルRe^3: WEB PROTECTについて
ID情報: kent
投稿者: KENT

> > > URLはIISのため決定しておりません。
> > > さっそくなんですが、WEB PROTECTがうまく動作しません。
> > > check.cgiでは以下の通り結果が出ます。
> > > なお、sendmailは設置していません。
> >
> > ファイル構成や位置も書かれていないため、回答できないですね。
> > 「うまく動作しません」とは、具体的にはどのような現象になるのでしょう?
> 申し訳ございません。
> enter.cgiにアクセス、パスワードの入力を行い、ログインをしようとすると、IEに localhostの待機中… と出たままどれだけ待ってもtop.htmlに飛ばないのです。また、この状態でprotect.cgiにアクセスしても
> タイムアウトです。再度ログインしてください。
> と出て動作しません。
>
> なお、ファイル構成は C:/inetpub/wwwroot/ 内にパターン1の方法で設置し、 wwwroot内直下に本体プログラムであるcgiを一式設置しています。
> (パターン1のままだとcheck.cgiでエラーが出るため、init.cgiのサーバーパスを書き換えなければならないのですが、指定方法がわからなくて、、)

ローカルな環境でもありますし、これは分からないですね。
サーバ側の設定の問題ではありせんか?
他の掲示板等のプログラムは動作しますか?

以下のようなところも参考にしてみてください。

http://akisoftware.com/pmsrv/help/cgiset2008.html
https://www.google.com/search?hl=ja&sclient=psy-ab&q=iis+cgi+%E3%82%BF%E3%82%A4%E3%83%A0%E3%82%A2%E3%82%A6%E3%83%88&oq=iis+cgi+%E3%82%BF%E3%82%A4%E3%83%A0%E3%82%A2%E3%82%A6%E3%83%88&gs_l=serp.3..0j0i30j0i8i30l2.9462.10112.0.10810.5.5.0.0.0.0.153.594.1j4.5.0...0.0...1c.1.17.psy-ab.Gre9PyqhFfI&pbx=1


記事No: 12183
投稿日: 2013/08/14(Wed) 12:48:43
タイトルRe^4: WEB PROTECTについて
ID情報: YKUKU
投稿者: IISサーバー利用者

返信遅れて申し訳ありません。
あれから設置をやり直しましたが、やはり localhost の待機中・・・となり、動作しません。
ディレクトリ構成は パターン1、init.cgiは以下の通りです。
#=====================================================================
# ▼設定項目
#=====================================================================

# 管理用パスワード
$cf{password} = '省略';

# パスワード発行形態
# 1 : ユーザからの発行&メンテを可能にする
# 2 : 発行は管理者のみ。ユーザはメンテのみ
# 3 : 発行&メンテは管理者のみ(index.htmlは不要)
$cf{pwd_regist} = 3;

# 管理者メールアドレス
# → $cf{pwd_regist} = 1; のとき
$cf{master} = '省略;

# sendmailパス【サーバパス】
# → $cf{pwd_regist} = 1; のとき
$cf{sendmail} = '/usr/lib/sendmail';

# sendmailの -fオプション
# → サーバ仕様で必要な場合
$cf{sendm_f} = 0;

# 認証後の有効時間(分)
# → 初期ログインしてからの有効時間
$cf{job_time} = 60;

# 隠しファイル(トップ)
# → ""の中にファイル名のみを記述
${$cf{secret}}[0] = "top.html";

# 以下は隠しファイル(次ページ以降分)
# → [1][2][3]... と続ける。""の中にファイル名のみを記述。
# → CGIの場合はhttp://から記述する。
${$cf{secret}}[1] = "file1.html";
${$cf{secret}}[2] = "file2.html";
${$cf{secret}}[3] = "file3.html";

# バイナリファイル
# → キー(左方)はパラメータ
# → 値(右方)は順に、「ヘッダー」「拡張子」をコンマで区切り
$cf{binary} = {
gif => "image/gif,gif",
jpeg => "image/jpeg,jpg",
pdf => "aplication/pdf,pdf",
excel => "application/ms-excel,xls",
};

# 隠しディレクトリ【サーバパス】
# → 外部から直接アクセスできない場所のほうがよい
$cf{prvdir} = '../private';

# セッションディレクトリ【サーバパス】
$cf{sesdir} = "../ses";

# パスワードファイル【サーバパス】
$cf{pwdfile} = '../data/.htpasswd';

# アクセス履歴ファイル【サーバパス】
$cf{logfile} = '../data/.axslog';

# 会員ファイル【サーバパス】
$cf{memfile} = '../data/.member';

# テンプレートディレクトリ【サーバパス】
$cf{tmpldir} = "./tmpl";

# 本体プログラムURL【URLパス】
$cf{protect_cgi} = './protect.cgi';

# 入室プログラムURL【URLパス】
$cf{enter_cgi} = './enter.cgi';

# 登録プログラムURL【URLパス】
$cf{manager_cgi} = './manager.cgi';

# 管理プログラムURL【URLパス】
$cf{admin_cgi} = './admin.cgi';

# 最大受理サイズ
# → プログラムとして受理可能なサイズ
# → Byteで指定する [例] 1024 = 1KB
$cf{maxdata} = 10240;

# アクセスログ最大保持数
$cf{max_log} = 300;

# 1ページ当り会員表示件数(管理画面)
$cf{pg_max} = 10;

# ユーザ登録アクセス制限(半角スペースで区切る)
# → 拒否するホスト名又はIPアドレスを記述(アスタリスク可)
# → 記述例 $deny = '*.anonymizer.com 211.154.120.*';
$cf{deny} = '';

# ホスト取得方法
# 0 : gethostbyaddr関数を使わない
# 1 : gethostbyaddr関数を使う
$cf{gethostbyaddr} = 0;

# パスワード発行形態をユーザ操作にした場合の完了画面の戻り先【URLパス】
$cf{back_url} = "../index.html";

#=====================================================================
# ▲設定完了
#=====================================================================
なお、IISの内部で

HTTP エラー 502.1 - Bad Gateway
指定された CGI アプリケーションは、正しく動作しませんでした。HTTP ヘッダーの完全なセットが返されませんでした。返されたヘッダーは "[Wed Aug 14 12:35:13 2013] Session.pm: Use of qw(...) as parentheses is deprecated at lib/CGI/Session.pm line 804. " です。

というエラーもででます。


記事No: 12184
投稿日: 2013/08/14(Wed) 14:11:49
タイトルRe^5: WEB PROTECTについて
ID情報: kent
投稿者: KENT

> なお、IISの内部で
>
> HTTP エラー 502.1 - Bad Gateway
> 指定された CGI アプリケーションは、正しく動作しませんでした。HTTP ヘッダーの完全なセットが返されませんでした。返されたヘッダーは "[Wed Aug 14 12:35:13 2013] Session.pm: Use of qw(...) as parentheses is deprecated at lib/CGI/Session.pm line 804. " です。
>
> というエラーもででます。

他のCGIプログラムは正常に動くのですか?
今回の件は、プログラム側ではなく、サーバ側設定のような気がするのですが・・?


記事No: 12189
投稿日: 2013/08/14(Wed) 16:23:42
タイトルRe^6: WEB PROTECTについて
ID情報: YKUKU
投稿者: IISサーバー利用者

>
> 他のCGIプログラムは正常に動くのですか?
> 今回の件は、プログラム側ではなく、サーバ側設定のような気がするのですが・・?
何かチェック用に設置が簡単なcgiプログラムってありませんか?


記事No: 12190
投稿日: 2013/08/14(Wed) 17:18:24
タイトルRe^7: WEB PROTECTについて
ID情報: kent
投稿者: KENT

> >
> > 他のCGIプログラムは正常に動くのですか?
> > 今回の件は、プログラム側ではなく、サーバ側設定のような気がするのですが・・?
> 何かチェック用に設置が簡単なcgiプログラムってありませんか?

先の私の質問にも回答されていませんし、またIISの設定等については専門外です。
IISの設定についてQAを行う場で質問するべきではないでしょうか?


記事No: 12193
投稿日: 2013/08/14(Wed) 17:39:28
タイトルRe^8: WEB PROTECTについて
ID情報: YKUKU
投稿者: IISサーバー利用者


> 先の私の質問にも回答されていませんし、またIISの設定等については専門外です。
> IISの設定についてQAを行う場で質問するべきではないでしょうか?
>
誠に申し訳ございません。
他のCGIプログラムとは、このWEBPROTECTに入っているプログラムのことでしょうか?もしそうであれば、admin.cgi、check.cgi等は動作いたします。
また、全く別のプログラム(掲示板等)については、動作いたします。
また、IISでのCGIの動作方法について書かれたページがあり、そこで書いてある通りに設定しているので、設定には問題がないはずなのですが…


記事No: 12194
投稿日: 2013/08/14(Wed) 17:54:07
タイトルRe^9: WEB PROTECTについて
ID情報: kent
投稿者: KENT

>
> > 先の私の質問にも回答されていませんし、またIISの設定等については専門外です。
> > IISの設定についてQAを行う場で質問するべきではないでしょうか?
> >
> 誠に申し訳ございません。
> 他のCGIプログラムとは、このWEBPROTECTに入っているプログラムのことでしょうか?もしそうであれば、admin.cgi、check.cgi等は動作いたします。
> また、全く別のプログラム(掲示板等)については、動作いたします。
> また、IISでのCGIの動作方法について書かれたページがあり、そこで書いてある通りに設定しているので、設定には問題がないはずなのですが…

他のCGIが動くならば、多分現状のPerlとCGI::Sessionとの相性かもしれません。
もしかしたら、以下かも。

http://search.cpan.org/dist/perl-5.14.0/pod/perldelta.pod#Use_of_qw(...)_as_parentheses

■変更箇所
/lib/CGI/Session.pm 804行目

for my $plug qw(driver serializer id) {



for my $plug (qw(driver serializer id)) {


これでダメならば、原因は分かりません。
現状のサーバとプログラムとの(他の)何らかの相性の問題です。


記事No: 12198
投稿日: 2013/08/14(Wed) 22:16:22
タイトルRe^10: WEB PROTECTについて
ID情報: YKUKU
投稿者: IISサーバー利用者

>
> 他のCGIが動くならば、多分現状のPerlとCGI::Sessionとの相性かもしれません。
> もしかしたら、以下かも。
>
> http://search.cpan.org/dist/perl-5.14.0/pod/perldelta.pod#Use_of_qw(...)_as_parentheses
>
> ■変更箇所
> /lib/CGI/Session.pm 804行目
>
> for my $plug qw(driver serializer id) {
>
> ↓
>
> for my $plug (qw(driver serializer id)) {
>
>
> これでダメならば、原因は分かりません。
> 現状のサーバとプログラムとの(他の)何らかの相性の問題です。
ありがとうございます!
とりあえず、Use・・・ のエラーはでなくなりました。
しかし・・・。今度は処理がされなくなっているみたいで、何回やっても Bad GateWay タイムアウト のエラーが発生するようになりました。
でも、ここからは自分でやってみます。
本当にありがとうございました。

追伸:
AN hTTPDに変更すると無事動作すろようになりました。
本当にありがとうございました。


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