
初心者でただいま、勉強中です。
よろしくお願い致します。
CGIを設定しました。
ローカル(AN HTTPDで確認して動きました)で#!C:/perl/bin/perlと書いたところを、アップするとき、レンタルサーバーの指定に書き換えアップしたのですが・・・何故か掲示板なのに、
「ただいま混み合っています。」とロックを取得する(失敗した場合は処理を終了する)場面で止まっているようです。
この場合、レンタルサーバーがロックを受付ないのでしょうか?
sub lock {
( $lockdir_name ) = @_;
$retry_cnt = 5;# リトライカウント
$sleep_sec = 1;# 待ち時間(秒)
$yuukou_sec = 60;# 有効時間(秒)
$lock_flg = 0;# ロックフラグ(1:ロック済 0:ロック不可)
foreach( 1..$retry_cnt ) {
if( mkdir( $lockdir_name, 0755 ) ) {
$lock_flg = 1;
last;
}
else {
sleep( $sleep_sec );
}
}
if( !$lock_flg ) {
@stat_data = stat $lockdir_name;
if( ( time - $stat_data[9] ) > $yuukou_sec ) {
rmdir $lockdir_name;
}
}
return $lock_flg;
}
#***** アンロックを行う
sub unlock {
( $lockdir_name ) = @_;
rmdir $lockdir_name;
}
他に考えられる簡単な失敗など、考えられることがありましたら、是非何でも、お願い致します。
No.1ベストアンサー
- 回答日時:
サーバで実行すると、lock() が 0 を返す、ということですね?
すると、一番に考えられる問題は「パーミッション」でしょう。
サーバの設定にもよりますが、CGIは nobody などの第三者権限で実行されることが多く、その場合ロックディレクトリを作成するディレクトリ(ロックディレクトリの親ディレクトリにあたる)のパーミッションに第三者用の書き込み権限が必要になります。
ロックディレクトリを設置するディレクトリのパーミッションを、0777 などにしてみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで相対パスの書き方を...
-
XML-DOMについて
-
ディレクトリパスの取得について
-
requireのファイルの置き場所
-
月の第一週とは
-
エクセルで毎月第2週日の水曜日...
-
週2回のペースって だいたい何...
-
[Excel] ある日の曜日が当月の"...
-
[C#]ListView一覧表示時の幅設...
-
毎○曜日って、使いますか?
-
VBA。複数のChangeイベントをま...
-
次のページへ
-
日本語問題 昨日は何曜日ですか...
-
リダイレクト
-
c言語の質問です。 ある月のカ...
-
カレンダープログラム、曜日の...
-
DBを10件毎に表示ページング...
-
確認画面
-
ユーザー定義の(aaa)
-
ファイルメーカー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで相対パスの書き方を...
-
C# FTPサーバ カレントディレ...
-
ディレクトリパスの取得について
-
上位階層のディレクトリパスを...
-
ローカルでは動くのに・・・ロ...
-
Perl の外部モジュールの利用方法
-
FORMのFILEでフォルダ(ディレ...
-
ネットサーフレスキュー[Web裏...
-
Pythonのstatsmodelsでカルマン...
-
ファイルをディレクトリ分配の...
-
シェルスクリプトの条件式の書き方
-
ActivePerlでのCGI設定
-
Windows漢字フォルダ名の扱い(...
-
URIとURLの違いは何ですか?
-
月の第一週とは
-
エクセルで毎月第2週日の水曜日...
-
毎○曜日って、使いますか?
-
週2回のペースって だいたい何...
-
[Excel] ある日の曜日が当月の"...
-
よくある 『 第○(1・2・3・4・...
おすすめ情報