2011-07-13 4 views
0

iOSデバイスからIIS Webサーバー(Windows Server Web 2008)にファイルをアップロードしようとしましたが、何らかの理由で追加されたファイルが特定のサイズ(約10MBと思われる)よりも大きい。iOSが音楽ファイルをサーバーにアップロードしない

私はこの問題についてもう少し質問をし、これらから多くの回答を見つけました。私はまだ送信されていない大きなファイルには問題があります。以前の上限は2MBでしたが、現在は約10MBほどです。これと何か関係があるかもしれないPHPのすべての設定は、500MBまたは6000秒のタイムアウトに設定されています。 IISのmaxRequestBufferも500MBに設定されているので、問題ではありません。

私はいつも変わってしまったことを見ると、問題はアプリ側にあるとは思えません。以前は、要求はサーバーによって送受信され、コードは実行されましたが、ファイルはその時点では大きすぎるため無視されます。しかし、今私は大きなファイルを持っているときにリクエストは受信されません。

私のObjective-Cのコードは次のようである:誰も私を伝えることができればここで間違って何が起こっているか

NSString *theUrl = @"myserverurl"; 
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:theUrl]]; 

[request setNumberOfTimesToRetryOnTimeout:2]; 
[request setShouldContinueWhenAppEntersBackground:YES]; 

NSTimeInterval timeOutSecs = 60000; 
[request setTimeOutSeconds:timeOutSecs]; 

//[request setUploadProgressDelegate:(id)]; 

[request setFile:[soundFileURL path] forKey:@"mainfile"]; 
[request startSynchronous]; 

それは私がたくさん役立つだろう!私は大きなファイルを送ることを許可する方法を見つけることができなかったので、それについての助けも素晴らしいでしょう! :)

ありがとうございます!

EDIT

は、いくつかのテストの後には11.1メガバイトは(音の5分48秒)非常に最大であるようです。この値を超えると、アップロードに失敗します。

答えて

0

二つの主な分野は、チェックする:Webサーバー上の

  1. 、ログを確認してください。
  2. クライアントではASIを同期的に使用したことはありませんが、非同期に切り替えると、-requestFailed:デリゲートメソッドを実装し、そのエラーオブジェクトをデバッガで分析できます。

また、HTTPリクエスト/レスポンスヘッダーに見て、興味深いものがアップになりますかどうかを確認(how-toを参照してください)。 HTTP Scoopは、15ドルで買うことができれば便利なツールです。 (私はHTTP Scoopの著者とは関係ありません)

また、クライアントとサーバーの間のファイアウォール、フィルタ、ウイルス対策ソフトウェアなどを確認してください。

+0

まず最初に、サーバーから何も返さないので、応答のヘッダーを確認できません。そして、ポート80が完全に開いているので、問題はファイアウォールだとは思えません。小さなファイルでも動作します。最後に、ログを見つけることができません。素晴らしいものになるだろう! – Manuel

+0

私はチェックし、アプリはエラーとしてnullを返します。だから私は何かの理由でPHPコードに間違っていると思う..私は/どのようにサーバーのログを確認する方法が不思議です。 – Manuel

0

IISでログを検索する IISマネージャーを開く サイトを保持するWebサイト(仮想ディレクトリではない)をクリックします。 あなたがWindows 2008であるとして、あなたは、IIS 7.0または7.5を持っていますので、あなたはログの下にIISグループ 下の「ロギング」オプションが表示されます、パスである「ディレクトリ」オプションがありますログへ

ログで十分な情報が得られない場合は、他の種類のログを選択するか、出力されるフィールド数を増やしてください。 異なるフィールドの説明を得るには、ヘルプを読む必要があります。

関連する問題