現在、メールを受信した際に、そのメールを別のアドレスに転送し、さらにサーバーに保存する、といったプログラムを作成しています。
メールを転送する処理が無事完成し、いざ書き込みを、と思っていたのですが
ファイルの書き込みがうまくできません。
メール受信時に、以下のようにメールフィルターの振り分けにて動作させています。
| /usr/bin/perl /home/hoge/public_html/piyo.cgi
書き込み処理はこのようにしています。
open(OUT, "+>foo.txt") or die "Can't open : $!";
flock(OUT, 2) or die "Can't flock : $!";
seek(OUT, 0, 0) or die "Can't seek : $!";
print OUT "piyo\n";
truncate(OUT, tell(OUT)) or die "Can't truncate: $!";
close(OUT);
とくにdieで処理が終了しているわけではなく、この後の処理も正常に行われているのですが
foo.txtへの書き込みが行われません。
また、メール受信時ではなく、通常アクセスでの場合はこの処理でファイルが正常に書き込まれることを確認しました。
エラーがでてとまるわけではなく、状況がわからず困っております。
皆様の知恵をお貸しください。よろしくお願いいたします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ファイル追加書き込み以外の処理は、本当にきちんと行われていますか?
プログラムの中でメール転送もしているのですか? そのメールがきちんと転送されていれば、プログラムは起動していることになりますよね。。。
ちなみに、サーバによっては、forward等からプログラム起動できないこともあります(権限の問題ですね)
同じように、実行者の権限の問題で、パーミッションエラーを起こすこともあるのかな、と思います。ディレクトリやファイルの権限等々はいかがでしょうか?
一旦、メールからPerlにパイプするときに、sudoを挟んでみてはいかがですか? root権限で実行して結果が違えば、原因が絞れるような気がするので。
同一プログラムでメールの転送も行っているので、プログラムが起動していることは間違いないです。
権限等も確認してみましたが、問題ないようでした。
sudoというものは初耳ですので、調べながらもう少し原因を絞ってみます。
色々ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- 英語 英語ができる方に質問です。 以下の文がネイティブの方に伝わるかどうかを確認していただけないでしょうか 7 2022/12/16 14:54
- Visual Basic(VBA) 【VBA】For文を使用し、行をコピーして別シートに貼り付ける方法を教えてください。 4 2022/07/19 09:01
- クレジットカード AMEXグリーンカードの発行について お世話になります。 今回AMEXグリーンカードを申し込んだとこ 2 2023/07/22 10:35
- 英語 丁寧な伺い(参加可否を促したい)英文を知りたいです。 2 2022/06/28 06:57
- au(KDDI) AUメールが受信できなくなった件 1 2022/08/16 10:35
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- 英語 home where you've rented one out for a week? 4 2022/08/06 09:13
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
FTPにて553エラー
-
cgiのパーミッションの設定の仕...
-
自宅サーバでのCGI関係エラーに...
-
ロリポップでCGIエラー500苦戦中
-
jcode.pl のパーミッション
-
VB6でレジストリファイルをイン...
-
EXCELファイルに誰がアクセスし...
-
CGIでソースがそのままでてしま...
-
《エクセルVBA》「他の人が該当...
-
CGIでの500エラー
-
cgi→csvが文字化け
-
VBAでサーバーにアクセスするに...
-
YY-BOARDについて
-
ASPからJavaScriptへの受け渡し...
-
perlからphpを実行して結果を得...
-
ケータイサイトの3社別自動振り...
-
「からし」と「マスタード」の...
-
ラジオボタンのグループ化
-
ASP(IIS?)のエラーについて
-
&や=、@を違うコードで表記したい
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FTPにて553エラー
-
Dreamweaverでのパーミッション...
-
pic16f873to873Aの違いはナンで...
-
パーミッション
-
VB6 FTPファイルのパーミッショ...
-
ローカルではうまくいってたの...
-
cgiからファイルの書き込みがで...
-
VB6でレジストリファイルをイン...
-
分かりません。誰か教えて
-
実行属性って?
-
サイトからCGIをダウンロー...
-
CGI設定の初歩的な質問
-
CGIの予約状況システムについて
-
Web Diary Professional設置後...
-
WEB PATIOが表示されない
-
CGIを覗かれないように
-
HPビルダー8でパーミッションを...
-
Perlの日記プログラムがIIS+Act...
-
属性値を変えられないのはなぜ...
-
SCPのファイル転送について
おすすめ情報