質問: @fopen($tmpdir.$filename, "w+"); flock($fp,2); fwrite($fp, $tmp); flock($fp,3); fclose($fp); OSはFedoraCore6、PHP5、画像を保存するフォルダは777にしています。 Postfixのdefault_privsをnobodyやapacheにしたりもしましたが、だめでした。 添付ファイルのファイル名の取得などが問題がなくできているのに、画像の保存だけできないというのがどうも理解できません。PHPではなくOSの問題ような感じもするのですが、どのような問題があると考えられるでしょうか? よろしくおねがいいたします。
回答: php のログ出力を確認してみる、が必要かと思います。ログファイルの場所は php.ini で指定されているかと。 ソースを見る限り $tmp として出力データ全体が一旦メモリ上に置かれる仕組みかと思いますので、php 側でメモリ利用量の制限などがかかっているのが原因かな、という気がします。時々やってしまいがちな点ですので・・。その場合は添付ファイルを十分小さいものにすればうまくいったりするのかもしれません。あくまでも切り分けの手段として、ですが。 あと、同じメールについて試してみた結果、パイプ起動だと失敗&POP3経由だと成功、になっているのでしょうか。