- ベストアンサー
WEB.configの設定<appSettings>について
WindowsServer2003 SP1 WEBサーバ名:testsv INIファイル配置フォルダ:\\testsv\D$\INIDATA WEB.configの設定で、以下のように記述すると うまくINIを読み取って動作するのに、 <appSettings> <add key="IniFilePath" value="D:\INIDATA" /> </appSettings> 以下のように記述すると上手くいきません(涙) <appSettings> <add key="IniFilePath" value="\\testsv\D$\INIDATA" /> </appSettings> testsvは名前解決できており、hostsファイルに設定済。 testsvをIPアドレスに変更しても現象は変化無し。 自分自身のフォルダなので権限なども問題無し。 最終的に行ないたいのは別のサーバの中のフォルダ内の INIを参照したいのですが、うまくいかないので、 自分のサーバ内でやってみましたが上記の結果になりました。 \\~~という参照方法は、WEB.CONFIGファイルでは 利用できないのでしょうか?どなたか教えて下さい。 困ってます。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
とりあえず、たぶん問題は"\\"の参照ではなくて、 D$でアクセスしているのがげんいんでしょう。 これは管理共有といい、Administrator権限を持つユーザーでしかアクセスできません。 http://www.atmarkit.co.jp/fwin2k/win2ktips/281stpdefshare/stpdefshare.html Webアプリを実行しているユーザー(通常はASPNET)はそういう権限を持っていないので、アクセスできないわけです。 自分のサーバー内の共有であれば明示的に共有を作成し、ASPNETユーザーに対して権限を与えればOKだとは思いますが、別サーバーだと、 ドメインを組んでいない限りアクセスは難しいかも。
その他の回答 (2)
- saru_
- ベストアンサー率39% (38/97)
質問への直接の回答にはなっていませんが、以下のサイトを見るに利用できるような感じはしますね。 http://www.codeproject.com/KB/aspnet/AspNetDeployment.aspx 上記サイトのコンフィグファイルでは、ユーザーとパスワードも指定してあるところが気になりますが、手元に環境がないので、これ以上は不明です。 直感的には、アクティブディレクトリ関連の気がしますが、単なるカンです。すみません。
お礼
回答ありがとうございます!参考になりました。
そのフォルダにアクセス権が不足しているだけではないでしょうか? >\\~~という参照方法は、WEB.CONFIGファイルでは >利用できないのでしょうか?どなたか教えて下さい。 こういうのは、新規に最少の WebApplication を作成して、Web.Config に値を入れ、その値が取れるか調べてみればすぐ判ることですよ。 Dim s As String = _ System.Web.Configuration.WebConfigurationManager.AppSettings.Get("IniFilePath")
補足
回答ありがとうございます。調べてみます!
お礼
回答ありがとうございます。 補足致します。管理者共有が原因!? 自分のサーバ内の共有であり、administrator権限を 与えてあります。IISの仮想ユーザでのログインもadministratorと しています(危険だけど・・) フォルダにeveryoneを与えて試してみます。