現在、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共にバージョンアップしてしまったので、どちらが原因なのか、調査のアタリを付ける方法でも結構です。
どなたかお知恵を貸してください。よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (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/
    • good
    • 0
この回答へのお礼

解決しました。

>・IIS7.0の[アプリケーションプール]
> →右クリック[詳細設定]
> →プロセスモデルのID変更
> →"NetworkService"から"LocalSystem"に変更
上記プロセスIDを、ビルトインユーザからカスタムユーザに
変更(administrator)することで、フォルダアクセスが可能に
なりました。

kero-mio様、ありがとうございました。
同じIISでも、6.0と7.0ではかなり勝手が違いますね。
まぁどちらも素人同然なんですが…
これから、動作を見ながらセキュリティを締めてみます。

お礼日時:2009/06/09 10:25

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q復元ポイントの作成とイメージファイル等のバックアップとの違いについて

今晩は、宜しくお願いします。

復元ポイントの作成とイメージファイル等のバックアップとの違いについて教えて下さい。

Windowsで復元ポイントからシステムを復元させる方法があり、
また、イメージファイル等にバックアップをとり、復元させる方法もありますが
この両者はどのように違うのでしょうか。

復元ポイントの作成とは、その時点のシステムの設定等だけを保存しているという
ことでしょうか。

また、イメージファイル等のバックアップを作成するということは
システム設定と作成したファイル等もイメージファイルとして一括してバックアップ
されるのでしょうか。

イメージファイルの復元時に、作成したファイル等もイメージファイルから
復元されるのなら、同じ名前のファイルがあった場合には、
イメージファイル作成時の古い情報のファイルになってしまうのでしょうか。

以上、宜しくお願いします。

Aベストアンサー

【システムの復元】
Windowsが使用するシステムファイルのバックアップと復元。
ユーザーファイルには影響しない。
HDDの中に作成されるので、Windowsが起動しない環境では使用出来ない。

【システム修復ディスクの作成】
Windowsの起動時にF8を押下して起動するセーフモードから「コンピューターの修復」「システム回復オプション」を、外部記憶装置(CD、USBメモリなど)から起動出来るようにする。
Windows自体が起動しなくなった場合に、外部記憶装置から「システム回復オプション」が起動出来るようになる。修復されるのは、選択した項目により異なる。
WindowsREを利用。
https://msdn.microsoft.com/ja-jp/library/hh825173.aspx

【バックアップと復元】
システムのバックアップを作成し、ハードディスクなどが壊れた場合に備えパソコン内部のデータを全てバックアップ・復元出来る。
Windowsのインストールディスクや、システム修復ディスクから復元が可能。
システムもユーザーデータもバックアップを取った時点の状態に戻る。

【システムの復元】
Windowsが使用するシステムファイルのバックアップと復元。
ユーザーファイルには影響しない。
HDDの中に作成されるので、Windowsが起動しない環境では使用出来ない。

【システム修復ディスクの作成】
Windowsの起動時にF8を押下して起動するセーフモードから「コンピューターの修復」「システム回復オプション」を、外部記憶装置(CD、USBメモリなど)から起動出来るようにする。
Windows自体が起動しなくなった場合に、外部記憶装置から「システム回復オプション」が起動出来るようになる。...続きを読む

Qwindows 2008 server にiisをインストールしてas

windows 2008 server にiisをインストールしてasp.netを使用しています。asp.netは動作するのですが、oracleへの接続ができません。oracle clientをインストールしsqlplusでの接続はできますが、asp.netでoracleへ接続すると以下のエラーがでます。

'MSDAORA' プロバイダはローカルのコンピュータに登録されていません。


エラーは以下3行だけで出ます。

Dim cn As New OleDb.OleDbConnection 'Oracle接続用オブジェクト
cn.ConnectionString = "Provider=MSDAORA;Data Source=XXXXX;Persist Security Info=True;Password=XXXXX;User ID=XXXXX"
cn.Open() 'ここでエラーになる

MSDAORAを使用するためには特別な設定が必要なのでしょうか?

Windows 2008 Server 64bit
IIS7 + .Net Framework 3.0
Visual Studio 2008
Oracle 10g


なおネットで調べたところOracleクライアントのインストールフォルダに権限がついていない場合、エラーが起きるとわかりました。そこでOracleクライアントのフォルダにeveryoneでフルコントロール権限をつけてみましたが、改善しませんでした。

windows 2008 server にiisをインストールしてasp.netを使用しています。asp.netは動作するのですが、oracleへの接続ができません。oracle clientをインストールしsqlplusでの接続はできますが、asp.netでoracleへ接続すると以下のエラーがでます。

'MSDAORA' プロバイダはローカルのコンピュータに登録されていません。


エラーは以下3行だけで出ます。

Dim cn As New OleDb.OleDbConnection 'Oracle接続用オブジェクト
cn.ConnectionString = "Provider=MSDAORA;Data Source=XXXXX;Persist Security Info=T...続きを読む

Aベストアンサー

2008でのサーバは立てたことが無いので、解決には至らない発言かもしれませんが、、、


web.configを改造して、ユーザを偽装してつながったら、権限の問題ではないはずです。

IISのコンパネで、ASP.NET構成ファイルを編集するか、下のように直接system.webを編集し、identityを追加してみてください。
(FrameWork2.0でしかやってませんが、根本は同じはず)


~かなり略してます~
identityのところだけ重要
<?xml version="1.0"?>
<configuration>
<appSettings />
<connectionStrings/>
<system.web>
<identity impersonate="true" userName="administrator等のユーザ" password="ぱすわーど" />
<他いろいろ />
</system.web>
</configuration>

これでつながらなければ、別の要素でつながらないことになると思います。

ちなみに
・DBはIISサーバと同じ?
・ネットワークはドメイン環境?

2008でのサーバは立てたことが無いので、解決には至らない発言かもしれませんが、、、


web.configを改造して、ユーザを偽装してつながったら、権限の問題ではないはずです。

IISのコンパネで、ASP.NET構成ファイルを編集するか、下のように直接system.webを編集し、identityを追加してみてください。
(FrameWork2.0でしかやってませんが、根本は同じはず)


~かなり略してます~
identityのところだけ重要
<?xml version="1.0"?>
<configuration>
<appSettings />
<connectionStrings/>
<system.web>
...続きを読む

Q救出ファイル復元 2の機能について

「救出ファイル復元 2」で画像ファイルJPEGの他にRAWファイル、拡張子(CR2)を復元出来るでしょうか。

キャノンの一眼デジカメを使っているのですが、他の復元ソフトでは、復元出来ませんでした。

Aベストアンサー

Vectorあたりで『ディスク・ファイル復旧』の項目で探せばみつかりそうですが。
要は,"復元ソフトで復元できるファイルがソフトに登録されている拡張子だけしかできない"ことですので,拡張子を選択できる復元ソフトを捜せばいいと思われます。

参考URL:http://www.vector.co.jp/vpack/filearea/win/util/disk/care/

Q[Win2003Server+IIS6]エラー表示が変わってしまった。

こんにちは。

現在、Win2003サーバーを使用してASPでウェブコンテンツを作成しています。

Win2000の時は、書いたASPを実行してエラーがあった場合、そのファイル名やエラーが発生しているライン番号が表示されるエラーページでした。

しかし、2003サーバーしてからそれが表示されなくなって、普通のエラーページになってしまいました。

エラーのライン番号が出ないのでデバックに手間が非常に掛かってしまっています。

この表示をファイル名とエラー番号、エラー内容が表示されるものにするにはどうすれば宜しいでしょうか?

下記の事は過去ログを見て実行してみましたがダメでした。

[コントロールパネル]
-[管理ツール]
-[インターネット インフォーメーション サービス]
-[規定の Web サイト]の右クリック-プロパティ
-[ホーム ディレクトリ]タブ
-[アプリケーションの設定]-構成
-[デバッグ]タブ
ASPサーバー・クライアントデバックを有効にするにチェック
◎「クライアントに詳細な ASP のエラーメッセージを送る」を選択、OK

宜しくお願い申し上げます。

こんにちは。

現在、Win2003サーバーを使用してASPでウェブコンテンツを作成しています。

Win2000の時は、書いたASPを実行してエラーがあった場合、そのファイル名やエラーが発生しているライン番号が表示されるエラーページでした。

しかし、2003サーバーしてからそれが表示されなくなって、普通のエラーページになってしまいました。

エラーのライン番号が出ないのでデバックに手間が非常に掛かってしまっています。

この表示をファイル名とエラー番号、エラー内容が表...続きを読む

Aベストアンサー

[クライアント側]
Internet Explorer の [ツール] メニューで [インターネット オプション] をクリックし、[詳細設定] タブの [HTTP エラー メッセージを簡易表示する] チェック ボックスをオフ。


でも、サーバの話しだし。。。。
500-100.aspにline出力するような記述が書かれているか確認してみてはいかがでしょう。

Q削除した画像ファイルの取り出しまたは復元方法

ごみ箱に入れてから削除したファイルの復元方法を教えてください。

以前にも同様の質問をしたのですが、その際に教えていただいた方法で確かにいくつかのファイルは復元することができました。

しかし、一番復元したい画像ファイル(jpeg形式)が復元できません、同時期に同じく削除したファイルは無事に取り出せたのですが肝心のファイルは取り出せません。指定するファイル名、フォルダ名などの間違いはないのですが何が原因で復元できないのか理解できません。

良きアドバイスをいただければ助かります。
宜しくお願いいたします。

Aベストアンサー

こういったファイル復元ソフトを利用してファイルを復活させます。

●FileRecovery(フリーウェア)

消去・欠損したファイルを復元するソフト。
http://www.pcinspector.de/download.htm

●復元(フリーウェア)
http://www.vector.co.jp/soft/win95/util/se192983.html

■FINALDATA(ファイナルデータ)フォトリカバリー3.0(有料)
http://www.finaldata.ne.jp/f_8_3.html

当然ながら復元できる確立は有料ソフトのほうが高いです。

これらを使っても復元できない場合はファイルが上書きされて完全に消えている可能性が高いです。

QIISのセッション情報について(旧ASPとASP.NETの共有)

IISのセッション情報について(旧ASPとASP.NETの共有)

うっすらと無理というかそんなコトしたら、セッション情報がダダ漏れになりそうな気がしますが、
標題のように、旧ASPのSession("hogehoge")の値をASP.NETから参照することは
技術的に可能なのでしょうか??

ご存知の方いらっしゃいましたら、ご教示をお願いします。

Aベストアンサー

出来ません

参考URL:http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=41021&forum=7

Q「ウイルス感染ファイル」削除後のシステム復元でどうなる?

ウイルスバスターで幾つかのウイルス感染ファイル発見し全て削除しましたが、感染したファイルはシステムファイルでしたので少し心配でしたが削除しました。
そこで教えて頂きたいのですが、感染した日付以前でシステムの復元をする事によって削除されたシステムファイルは復元できるのでしょうか?一度削除されたシステムファイルはシステムの復元をしても二度と復元しないのでしょうか?

Aベストアンサー

以下WindowsXPという前提で・・・

>システムファイルでしたので少し心配でしたが削除しました。
通常、このままではシステムエラーが発生します。
しかし、Windowsには自動復旧機能があり、削除されたファイルをハードディスク上にあるCabファイルから呼び出して復旧させるようになっています。
従って、殆どの場合、削除されたシステムファイルを手動でインストールする必要はありません。

☆SFCの実行
もしシステムエラーが出る場合SFC(System File Checker)の実行をお勧めします。

1.CDドライブにOSのインストールディスクを入れておく。
2.「スタート」「コマンドプロンプト」または「ファイル名を指定して実行」で
「sfc /scannow」と入力して「OK」

「Windows XP professional のディスクを入れてください」という表示が出ることがありますがHome Editionであれば「無視」を選んでスキップしてください

>感染した日付以前でシステムの復元をする事によって削除されたシステムファイルは復元できるのでしょうか?
出来ないことはないでしょうが、あまりお勧めできません。
現在の状態が正常でない。
過去の状態の方が快適に操作できる。
という場合、それがいいかもしれません。
しかし、Windowsの設定というのは非常に広範囲にわたっており、現在と過去を比較して、どちらが適正かを判断するのは容易ではありません。
また、過去の復元ポイントの中には不正な設定が含まれている場合があり、間違って、そのポイントを選択することもあります。
ウィルス対策ソフトのサイトでは一旦復元設定を無効にして、過去の復元ポイントを全て消去することを推奨しています。

>一度削除されたシステムファイルはシステムの復元をしても二度と復元しないのでしょうか?
間違った操作をすると汚染されたファイルが復元されてしまいます。
一旦復元設定を無効にして、過去の復元ポイントを全て消去することで汚染されたファイルは二度と復元しません。

以下WindowsXPという前提で・・・

>システムファイルでしたので少し心配でしたが削除しました。
通常、このままではシステムエラーが発生します。
しかし、Windowsには自動復旧機能があり、削除されたファイルをハードディスク上にあるCabファイルから呼び出して復旧させるようになっています。
従って、殆どの場合、削除されたシステムファイルを手動でインストールする必要はありません。

☆SFCの実行
もしシステムエラーが出る場合SFC(System File Checker)の実行をお勧めします。

1.CDドライ...続きを読む

QASPとASP.NETとASP.NET2.0の違い

Web開発初心者です。

帳票をPDF表示するWebアプリケーションを開発することになり、
言語はASPを使用することになりました。

そこで
ASP
ASP.NET
ASP.NET2.0
の違いをご存知の方がいらっしゃいましたら教えていただけますでしょうか。
それぞれIIS以外に必要な実行環境、ツール等も教えていただけると助かります。

不明瞭な箇所がありましたら説明させていただきます。
すいませんがよろしくお願いします。

Aベストアンサー

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用の制限等はありません。

(http://www.microsoft.com/japan/msdn/vstudio/express/faq/default.aspx)

「Express Edition を商用目的で使用することはできますか。」

また、「ASP.NET1.1用」の無料の開発ツールとして、3rdパーティ製ですが、
「Web Matrix 」と言うのがあります。

「ASP.NET Web Matrix Project 日本語版」
(http://www.microsoft.com/japan/msdn/asp.net/webmatrix/)

ASP用のツールは、多分、無いですね・・・
#メモ帳でASPファイルを作成してサーバにコピーとか。

ASP.NET用の開発ツールは、Microsft社製の「VisualStudio」シリーズがあり、
ASP.NET(1.1)は、「VislaStudio 2003」で、
ASP.NET2.0は、「VislaStudio 2005」で開発できます。


「Visual Web Developer 2005 Express Edition 」は、
「Visual Studio 2005」のEditionの1つで、有料のパッケージ版(入門者つき)と無料のダウンロード版があります。
機能的には同じで、無料版だからといって、商用利用...続きを読む

Q復元ソフトのふと感じた疑問 -ファイル名を削除したい-

先日、復元ソフトを使用していたときに感じたことなのですが
(使用ソフトは「復元」です。)
ファイルを復元する際の手順で削除したファイルが検索できますよね。
このファイル検索の時に、HITしないようにファイル名を完全に削除したい場合はどのようにすればいいのでしょうか??

例えば、「●●との秘密旅行001.jpg」のファイルを削除したとします。
その後、復元ソフトで検索をかけるとファイルを復元しなくてもファイル名を見ただけで怪しいファイルとわかってしまいますよね。
復元ソフトの検索で、表示されなくする方法か、別名に変える方法があるのなら教えてください。

Aベストアンサー

95159さんが求めていらっしゃるのは以下の方法ではないでしょうか。

フリーの復元ソフトに「DataRecovery」というものがあります。このフリーソフトには「削除したファイル」の名前を時間をかけず簡単に消去できる機能が付いています。

『DataRecovery』
http://www.vector.co.jp/soft/win95/util/se382922.html

■使い方
起動させる→該当ドライブをクリック→[スキャン]ボタンをクリック→削除したファイルの表示完了→「目的のファイルが見つかりましたか?」と出てきたら[キャンセル]をクリック→名前を消去したいファイルをクリックするか、名前を消去したい複数ファイルを左クリックしながら選択する→[消去]ボタンをクリック→[OK]をクリック

これで、名前を消せます。しかしながら完璧ではなくて、一部消せないこともあります。
(「DataRecovery」を再起動してもう一度ドライブをスキャンすると消せなかったファイルが表示されます)

参考URL:http://www.vector.co.jp/soft/win95/util/se382922.html

95159さんが求めていらっしゃるのは以下の方法ではないでしょうか。

フリーの復元ソフトに「DataRecovery」というものがあります。このフリーソフトには「削除したファイル」の名前を時間をかけず簡単に消去できる機能が付いています。

『DataRecovery』
http://www.vector.co.jp/soft/win95/util/se382922.html

■使い方
起動させる→該当ドライブをクリック→[スキャン]ボタンをクリック→削除したファイルの表示完了→「目的のファイルが見つかりましたか?」と出てきたら[キャンセル]をクリック→名...続きを読む

QASP.NETでWord読込→編集→テキスト取得

下記のような処理をしようと悪戦苦闘中です。
[メイン画面(IE)]ボタンクリックで子画面開く
[子画面(IE)]MicrosoftWord文書とOKボタン表示
      →文書編集後、ボタンクリックでテキストを取得(できればHTML形式で)
      →メイン画面に取得テキストを表示

<開発環境>
 VisualStudio2010
 C#

Web Applicationを作るのは初めてで、いろいろ勉強しながら、子画面にWordファイルを
表示するところまでたどり着きました。
 ・子画面にIFRAMEを挿入し、別のASPXファイルをSRCに設定
 ・そのASPXのPage_Loadで、
   Response.ClearHeaders();
Response.ClearContent();
Response.Buffer = true;
Response.ContentType = "application/msword";
Response.WriteFile(パラメータで渡されたファイルパス);
Response.Flush();
Response.End();
  として、Word文書を表示

ここから先が分からないのです。
子画面のボタンクリック時に、何とかして表示中のWord文書のテキストを取得できないで
しょうか。
Windows Forms ApplicationでWord Objectを操作するプログラムなら経験があるので、
Word Objectを取得できれば後は何とかなると思うのですが...

IFRAMEに表示しているWordのObjectが取得不可能であれば、
 ・子画面のボタンクリックで一旦中間ファイルに保存
 ・メイン画面の処理で中間ファイルからWordObject生成
みたいな感じかなとも思うのですが、「一旦中間ファイルに保存」というのはどうすれば
いいのでしょうか?

どなたかお知恵をお貸しください。よろしくお願いします。

下記のような処理をしようと悪戦苦闘中です。
[メイン画面(IE)]ボタンクリックで子画面開く
[子画面(IE)]MicrosoftWord文書とOKボタン表示
      →文書編集後、ボタンクリックでテキストを取得(できればHTML形式で)
      →メイン画面に取得テキストを表示

<開発環境>
 VisualStudio2010
 C#

Web Applicationを作るのは初めてで、いろいろ勉強しながら、子画面にWordファイルを
表示するところまでたどり着きました。
 ・子画面にIFRAMEを挿入し、別のASPXファイルをSRCに設定
 ・そのA...続きを読む

Aベストアンサー

オリジナルはサーバから渡すとしても、操作は
クライアントサイドのWordでの操作ですよね?
保存といってもクライアント側に保存されるので
サーバから見えません。
WebアプリケーションではSubmitした時に、
画面の情報がサーバに送られるので、ファイルを
扱うならダウンロード、アップロード、メール添付の
いずれかしかありません。他の手段としては
ブラウザのセキュリティを緩めて、ActiveXの生成を
許可すればクライアントサイドスクリプトとAJAXを
組み合わせて、何とかできるかも知れませんが、
相当に危険(ActiveXを許すとウィルス感染の危険が
高くなる)なので、通常は許されません。
運用設計として、ダウンロード→編集→アップロード
としてみてはどうでしょう?
但し、ファイルにウィルスが入る心配があるため、
アップロードされたファイルのウィルスチェックをどの
ように行うか、あるいはこの操作が可能なユーザを
絞り込む等の対策も考えておく必要があります。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報