2016-11-10 21 views
0

zipファイルをアップロードし、アプリケーションフォルダの下にあるTempフォルダに展開して、別のターゲット場所にこれらの一時ファイルをコピーして削除したアプリケーションがありますTempフォルダから。 IIS上のローカルマシンですべてうまく動作しますが、サーバマシンに同じコードを置くとファイルI/Oアクセス許可エラーが発生します。にはアクセスできません。 誰も私にこれを助けることができますか?サーバ上でのアクセス許可の問題

は、ここで同じコード

string path = Server.MapPath("~/UploadedZipFiles/" + filename); 
fileUpload1.SaveAs(path);//saves zip in temporary folder 
ExtractZIP(filename, targetfolder); //extracts the zip folder contains to  //target folder path 
+0

任意の権限に関連する問題について覚えておくべき重要なビットがありますアクセス許可はID(ユーザー)に固有のものです。どのユーザーがアプリケーションプールのIDとして使用されているのかを判断し、そのユーザーのアクセス許可を設定する必要があります。 –

+0

@Eben - どのユーザーがアプリケーションプールIDとして使用されているかを確認する方法はありますか –

+0

ありがとうございます。これは通常、Windowsサービス、Webアプリケーション、キューなどのバックエンドの目的で作成された特定のユーザーを使用すると簡単になります。 IISマネージャーのアプリケーションプール一覧の「ID」列です。または、問題のアプリケーションプールのコンテキストメニューで[詳細設定...]を選択することもできます。明示的なユーザーがいない場合は、Netを検索して、指定された事前定義されたユーザーのアクセス許可の設定方法を調べることができます。これは、通常、あなたが完全に制御できるカスタム/明示的なアカウントで作業するのがやや簡単です。 –

答えて

0

あなたのアプリは、書き込み、削除またはファイルを編集する必要があるフォルダごとに、あなたのIISユーザーへのフルアクセスを許可する必要があります。

あなたはこれをうまくやっていないと思います。権限を追加すると、何これはこれらを試している方法のための詳細情報については


UPDATE:

別があります。良いライブラリZipの場合&プロジェクトで使用したC#のファイルを解凍します。私はあなたにもそれらをチェックすることをお勧め:

関連する問題