新規記事投稿 フォロー記事投稿 記事のキャンセル
From: にあ <nir@mxa.meshnet.or.jp>
Subject: Re: contentsがロックできません
Date: 1998/08/19 05:35:32
Reference: mesh.forum.3/00543

8月18日に、MIAさんは書きました。

>システムに致命的エラーが生じました。原因 ('ロック出来ません', "test/contents")
>
contentsファイルはリードオンリーにはなっていませんか?
なっていないのなら、実際にflock()が出来ないOSなのでしょう。

Hi-HoのWebガイドラインを見ると、perlは4.036の様なので、OSがflock()を
サポートしていない限りファイルロックは出来ません。

site.plで、

$flock_disable = 1;

を設定して下さい。
また、シンボリックリンクも使えないようなので、

$copy = 1;

も設定して下さい。

>$FORUMPATHの部分をすべて"$ENV{'HOME'}/html/horum"に変更しています。
>※$FORUMPATHに"$ENV{'HOME'}/html/horumを設定しようとしたらサーバエラー
> となるためすべての個所に展開しました。 
>
$forumpath = "$ENV{'HOME'}/html/horum";

では上手く行かないのですか?

>下記の制限により、$CGIPATH = '"/cgi-bin/user/メールアカウント名'
>としたがサーバエラーとなったため、$CGIPATHを使用している部分を
> require "$ENV{'HOME'}/cgi-bin/forum.pl";のように変更したら
>とりあえず画面がでた。
>
$CGIPATH = '.';

のままでは動かなかったという事ですか?
それがダメでも、

$CGIPATH = '/cgi-bin/user/メールアカウント名';

でしょうね。

$CGIPATH = "$ENV{'HOME'}/cgi-bin";

でも同じ所なのでしょうが、少なくともWebガイドラインで推奨しているのは上ですね。

>とりあえずcontentsのパーミッションは上位ディレクトリ含めて777としています。
>
ディレクトリは701、contentsは600で十分でしょう。
詳しくは、SetUIDサーヴァ環境でのディレクトリリストを参照して下さい。