質問: コマンドファイルからのftp転送の実行について 運用サーバからバックアップファイルを他のサーバに転送したく、 phpからコマンドを実行する方法という下記のサイトを参考にphpから実行 できないか模索しております。 http://piyopiyocs.blog115.fc2.com/blog-entry-760.html ftp.shで保存しておき、実行用のphpに下記を記述し、 「」 ftp.shと同じ階層にアップロードしてからphpファイルをブラウザから、 呼び出してみたものの、6gbあるはずのファイルが2gbほどしかアップロードされません。 ターミナルから、ftp.shを実行した場合は、 6gbでアップロードできております。 ●実行結果 ・php→ftp.sh:2gb(×) ・ターミナル→ftp.sh:6gb(○) ●php→ftp.shとターミナル→ftp.sh共に共通して、 ?invalid commandという出力が行われます。 ?invalid commandが出力されてはおりますが、 一応はファイルの転送が実行はされております。 phpからの実行の場合は、phpの容量制限かなにかが反映されてしまうのでしょうか。 phpからの実行でアップロードファイルが途中で止まる現象を回避する方法は、ありますでしょうか。 ?invalid commandというのは、正常に処理が行われている場合でも 出力されるのでしょうか。
回答: 質問は2つありますね 1.ファイルの転送が途中で止まってしまっていること これはウェブベースで処理を実行している為、ブラウザーとウェブサーバとの間にタイムアウトが発生してしまい。ftpコマンドの実行が途中で止まってしまう為です 2.?invalid commandが表示される件 これはftp.shファイルでftpコマンドに指定しているオプション等に間違えが存在しているます ここでは、ftp.shの記述がどうなっているのかわからない為どうにもできません。 ftp.shの記述を確かめてください