2011-01-23 14 views
1

ImageMagickは主にローカルマシン(Mac)上で動作するようになっていますが、それは最終的には実行されるサーバーにアップロードする必要はありません。それはそうではないと私に迷惑をかける!ImageMagickはMacでローカルに実行されていません

私はpdfをgifに変換しています。私はIMGKとGhostWriterがインストールされていますし、コマンドラインから実行しても、私が望むのと同じ方法で正常に変換できます。

convert file.pdf[0] -antialias -resize 105x150\! -shave 1x1 -bordercolor "#000000" -border 1x1 -colors 64 file.gif

を私はexecを使用してPHPでそれを実行してみましたが、それはそれのいずれかを持っていません。ここで私が使用しているコマンドです。私は、ソースファイルと宛先ファイルのアクセス許可をチェックし、その上にchmod 777を実行したので、それはそれほどだとは思わない。

私は引数なしでconvertを実行し、私は利用可能なすべてのさまざまなオプションとスイッチと通常のヘルプテキストを取得し、出力をログに記録するPHPのexecに2番目の変数を使用している場合は、私はexec作業とconvertされることにアクセス可能であることを知っていますプロセス。しかし、引数を追加すると出力が得られず、2番目の変数に記録されるか、変換されたイメージの形で記録されます。

非常に奇妙な、非常にイライラする!

提案がありますか?

答えて

1

私の推測では、あなたのPHPユーザは現在のディレクトリに書き込む権利がないため、ImageMagickは失敗する必要があります(exec()から呼び出されたときにPHPユーザの権限で実行されるため)。ディレクトリchmodを使用して「世界に書き込み可能な」権利。

は、答えに感謝し、生産IMは、エラー・メッセージを(おそらく)キャッチ this question.

+0

こんにちはペッカを参照してください。 'chmod 777'を実行すると、世界の書き込み可能な権利がカバーされるはずですか?私は間違いなくソースと宛先の両方でそれをしました。 –

+0

私はIMで冗長モードをオンに切り替えようとしましたが、これはexecを実行したときに得られるものです: 'convert:画像ファイル名がありません' /users/stickm01/Desktop/tmp/profile_pic_screen-updated.gif '@ error /convert.c/ConvertImageCommand/2949 convert:画像を開くことができません '/users/stickm01/Desktop/tmp/profile_pic_screen-updated.pdf':@ error/blob.c/OpenBlob/2584の権限が拒否されました。 convert:画像ファイル名がありません '/users/stickm01/Desktop/tmp/profile_pic_screen-updated.gif '@ error/convert.c/ConvertImageCommand/2949.' –

関連する問題