IIS7.0 他コンピュータへのフォルダアクセス

このQ&Aのポイント
  • 2003Server R2 SP2、IIS6.0から2008Server、IIS7.0に移行した際にファイルの取得がうまくいかなくなった
  • エクスプローラ上では問題なく開けるが、IISの規定のフォルダから呼び出すと読み込めず、ファイルが存在しない場合の処理に入ってしまう
  • いくつかの設定を試したが、うまくいかないため原因を特定する方法を知りたい
回答を見る
  • ベストアンサー

IIS7.0 他コンピュータへのフォルダアクセス

現在、2003Server R2 SP2、IIS6.0で稼動していたVB.Net aspのプログラムを、2008Server、IIS7.0に移行しているのですが、今まで問題なく動作していたファイルの取得が、うまくいかなくなりました。 別のファイルサーバ上(2003Server R2 SP2)に置いてあるxmlファイルを読み込むという動作をさせたいのですが、エクスプローラ上では問題なく開きます。また、VB.Net aspからのステップ実行でも正しく取得出来ているのです。 しかし、ビルドしてIISの規定のフォルダに置き、IEから呼び出すと読み込めず、ファイルが存在しない場合の処理に入ってしまいます・・ 試しに2008SV側のローカル上にフォルダを置くと、正しく取得します。 ・読み込むフォルダのアクセス権限をEveryOne→フルコントロールに ・2008SVでWindowsFireWallの許可対象に"WorldWideWeb(http)"を追加  →2003SVではF/Wサービスを停止 ・IIS7.0の[アプリケーションプール]  →右クリック[詳細設定]  →プロセスモデルのID変更  →"NetworkService"から"LocalSystem"に変更 上記設定では試してはいるのですが、うまくいきません。 OS、IIS共にバージョンアップしてしまったので、どちらが原因なのか、調査のアタリを付ける方法でも結構です。 どなたかお知恵を貸してください。よろしくお願いいたします。

  • Yes-I
  • お礼率100% (1/1)

質問者が選んだベストアンサー

  • ベストアンサー
noname#158371
noname#158371
回答No.1

IIS7の場合、UNC パススルー認証 を設定すればいけると思いますが、 http://support.microsoft.com/kb/214806/ja 上記は、UNCパス(ネットワークパス)にあるディレクトリを仮想ディレクトリにする方法なので、ちょっと違うのかもしれません。 また、上記に加え、UNC(外部サーバーにアクセスできるログインID)を別途作成し、web.config や問題のデータが格納されている別サーバー に作成したログインIDにアクセス権限を付与してあげればいけそうな気がします。 http://support.microsoft.com/kb/934515/ ちょっと環境がないので試してないんですが、もし上記でもダメだった場合は、またご連絡ください。

参考URL:
http://support.microsoft.com/kb/934515/
Yes-I
質問者

お礼

解決しました。 >・IIS7.0の[アプリケーションプール] > →右クリック[詳細設定] > →プロセスモデルのID変更 > →"NetworkService"から"LocalSystem"に変更 上記プロセスIDを、ビルトインユーザからカスタムユーザに 変更(administrator)することで、フォルダアクセスが可能に なりました。 kero-mio様、ありがとうございました。 同じIISでも、6.0と7.0ではかなり勝手が違いますね。 まぁどちらも素人同然なんですが… これから、動作を見ながらセキュリティを締めてみます。

関連するQ&A

  • IIS 他マシンの共有フォルダへの接続について

    質問させて頂きます。 Webサーバー(2008R2 IIS7.5) から、ファイルサーバーの共有フォルダに、UNC形式(\\サーバー名\aaa\bbb.txt)でアクセスしたいと考えております。(アクセスする際はVBです) 単純な方法では出来ないようなので、ネットの情報を調べてみたところ、「IIS_IUSRS権限を付ける」とか、「認証の偽装を行う」とか、「アプリケーションプールの設定を変える」とか、「machine.configのprocessModelにuserNameを設定」とか、いろいろな情報が出てくるのですが、全てうまくいきません。 (正確に言えば、うまくいくものもあるのですが、古い情報のようなので、今時点で使えるものなのか信用できません。) 悩んで悩んで、共有フォルダに「Users権限」を追加したところ、うまくいくようになってしまいました。 が、これで良いのか不安です。 これで運用しても問題ないかどうかのアドバイスをお願い致します。

  • フォルダーのアクセスコントロール

    Windowss2003サーバーにて、ファイルサーバーを運用しています。 フォルダのアクセスコントロールのことでお伺いします。 通常はどんなフォルダにもadministratorフルコントロールをつけています。 ところがあるがAdminiを含む全員を拒否にしてしまいました。 Adminiであれば所有権を奪取すれば、フォルダやファイルのアクセスコントロールを変更するのは難しくありませんが、どうやらひとつずつ取得していくしかないようなのですが。 一括して所有権を奪取するような方法はないでしょうか。。よろしくお願いいたします。

  • IIS フォルダアクセス

    環境:VS2019 C# MVC webサーバー:windowsサーバー IIS7.0 WEBアプリ:C:\inetpub\wwwrootに配置 書込みたいフォルダのパス:C:\test 上記の環境でWEBアプリのテストをしているのですが、一部のユーザーがWEBアプリがフォルダにファイルを作成する際にエラーとなりフォルダにファイルを作成することができない現象が発生しています。 該当のフォルダには「IIS-USER」で書き込みを許可した権限を付与しております。 またできるユーザーとできないユーザーがいます。 自身の設定が何か足りないとは思うのですが、見当がつかないため質問させていただきました。 ご教授の程よろしくお願いします。

  • IIS6.0(windowsServer2003)はIIS5.0(windos2000Server)より性能が下?

    IIS5.0もしくはWindowsXP(IIS5.1)で 開発した照会系ASPを表示させると一瞬で結果が 返って来るのに IIS6.0ではすごく時間がかかります。 WindowsServer2003上で自分のアドレスを 指定すればすぐに結果は返ってきます。 しかし同じネットワーク上の クライアントからそのサイトを表示すると とても遅いです。 ブラウザはサーバーもクライアントもIE6.0 SP2 クライアントから同じく同ネットワーク上の Windows2000Serverに同じASPファイルを置いて 動作させると一瞬で返って来ます。 何が問題なのでしょうか? とても困っています。どなたか助けてください。 よろしくお願いします。

  • IISが応答しなくなる

    お世話になります。 IIS6.0(WindowsServer2003)上でASPアプリケーションを 動かしています。(社内LAN) 設定などの変更もしていないのに、突然 「サーバーがダウンしているかメンテナンス中です(英文)」となり、 アクセス不可になってしまいます。 なお、この表示はIISが表示しているのではなく、Proxyサーバーが 表示しているようです。IISやOSを再起動すると復旧するのですが、 原因を追求するには、何を見たらよいですか? アクセス不可になった日のアクセスログは見てみたのですが、 今ひとつ押さえどころがわかりません。 イベントログを見てみたのですが、時おり、ASPファイルで 予期せぬエラーというのがあるのですが、その程度でIISがとまってしまうのでしょうか? よろしくお願いします。

  • IIS7.0での、Excel WorkBooks.Openが失敗します

    IIS7.0での、Excel WorkBooks.Openが失敗します。 IIS7.0でのExcel操作で困っております。 環境  Windows2008Server IIS7.0  ASP(.Netでは無い)  Excel Win2000SVで動作しているWebシステムのリプレースのため、Win2008SVで動作検証中です。 このプログラムは、サーバー上のExcelファイルを開き、このExcelをHTML形式で出力(保存)します。そして出力されたHTMLを画面に表示させます。 Set dObjExcelApp = CreateObject("Excel.Application") dObjExcelApp.WorkBooks.Open Excelファイル名 dObjExcelBook = dObjExcelAppActiveWorkbook   中略 dObjExcelBook.SaveAs HTMLファイル名 これを実行すると WorkBooks.Openがコード:1004、"WorkBooksクラスのOpenメソッドが失敗しました。" で、エラーとなります。 当初CreateObjectが"70"でエラーとなっていたのですが、DCOM構成でアクセス許可を付与することによりエラーを回避しました。 しかし、WorkBooks.Openメソッド実行エラーの原因、対策が分かりません。 (パス不正とかではありません。) 同じコーディングをしたVBプログラムは正常に動作します。 原因、対処方法、または代替案などご存知の方がいらっしゃいましたら、ご教示ください。 宜しくお願いいたします。

  • C#のプログラムで作業フォルダを取得できない (IIS5.1+.NET

    C#のプログラムで作業フォルダを取得できない (IIS5.1+.NET 2005) IIS5.1のサイトで、C#で作ったプログラムを実行します。 プログラムは同じフォルダーにあるiniファイルを読み込んで作業します。 問題は、正しい作業フォルダーを取得できないとのことです。 下記のメソッドの戻り値は「c:\windows\system32」になっています。 Directory.GetCurrentDirectory() Environment.CurrentDirectory しかし、それはEXEファイルのフォルダーではないです。 どうやって本当の作業フォルダーを取れますか? ちなみに、当サイトでvb6で作ったプログラムもあります。 そちらは「App.Path」で本当の作業フォルダーを取れます。

  • IISをASP.NET用に構成できない

    VisualStudioにてC#/ASPでWebアプリを開発しています。 アプリを VisualStudio開発サーバーでなく IISで起動しようとすると、以下のエラーメッセージが出ます。 「このサイトが正しく動作するためには、 このサイトを手動でASP.NET4.0用に構成する必要があります。 ASP.NET4.0はWebサーバーに登録されていません。 このサイトが正しく動作するためには、ASP.NET4.0用に Webサーバーを手動で構成する必要があります。」 IISのインストールで 「IISメタベースおよびIIS6構成との互換性」のチェックと アプリケーション開発機能の「ASP」と「ASP.NET」のチェックは いれています。 原因と対策をご教授ください。

  • IIS5.0の再起動方法を教えて下さい。

    ASPの動作がおかしくなるたびに、 サーバの再起動をしています。 IIS5.0のみを再起動する方法を至急 教えて下さい。

  • IIS5で作成したASPをIIS7でデバッグしたい

    Windows2000+SQLServer2000Standard+IIS5環境で作成したASPを Windows2008+SQLServer2005Express+IIS7環境に移植したところ、 いくつかのASPでエラーが出るようになりました。 IIS5の環境ではエラーになった行数や詳細が表示されていましたが、IIS7では「500-内部サーバーエラーです」程度しか表示されず、どこが悪いのかわかりません。 IIS5では動いているし、IIS7上でもきちんと動作しているASPもあるので、どこが悪いのかわからず困っています。せめてエラーになっている行がわかれば、と思うのですが・・・ IIS5のようにエラーの詳細情報を表示させる設定か、または別のデバッグ方法をご存知の方がいらっしゃいましたらご教示お願いいたします。 開発はVisualInterDev6.0です。 お手数をおかけいたしますが、宜しくお願いします。

専門家に質問してみよう