2010-12-20 18 views
5

私はweb.config内の接続文字列を暗号化しようとしています。私は次のようだ:connectionString暗号化

http://msdn.microsoft.com/en-us/library/2w117ede.aspx

をしかし、私はコマンドを使用して、一部を取得する場合:

ます。aspnet_regiis -pe "のconnectionStrings" -app "/ MyApplicationを" -prov "MyProvider"

"仮想パス '/ MyApplication'とサイト 'Default Web Site'の設定を開くことができません。

パス '/ myapplication'のマッピングに失敗しました 失敗しました!

私は指示を正しく順守していると確信しています。私は 'C:\'ルートに直接 'My​​Application'という名前のプロジェクトを作成しました。

アイデア?おそらく私は別の一連の指示に従っていなければなりませんか?

答えて

1

既定のWebサイトの下に、IISの仮想ディレクトリとしてMyApplicationフォルダを追加しましたか?それは、それが探しているもので、フォルダパスではないようです...

to this MSDN postによると、-siteを使用して、ターゲットにするサイトを定義できます。そのサイトからの抜粋:

Web.configファイルが暗号化され、-siteオプションは、アプリケーションがの一部であるウェブサイト を識別するために、対象のアプリケーションを識別するための-appオプションを使用します。このWebサイトは、インターネット情報 サービス(IIS)メタベースのサイト番号を使用して識別された です。サイト番号は、ServerVariablesコレクション内の INSTANCE_META_PATHサーバー変数から取得できます。 たとえば、IISがインストールされると、 "Default Web Site"という名前のWebサイトがサイト1として作成されます。そのサイトから提供されるページでは、 INSTANCE_META_PATHサーバー変数が "/ LM/W3SVC/1"を返します。 に-siteオプションを指定しないと、サイト1が使用されます。

+0

しかし、それがデフォルトのWebサイトにない場合はどうなりますか?どのように定義すればよいですか? – Jeb

+1

上記のように-siteオプションを使用します。 –

0

/MyApplicationは仮想パスであり、メッセージはパスが利用できないと表示されているようです。つまり、http://localhost/MyApplicationはありません。 IISであなたのアプリケーションの仮想ディレクトリを作成するのを忘れましたか?

11

ご回答ありがとうございます。 "管理者"としてコマンドプロンプトを実行する必要がありました。

+1

あなたの質問を解決してマークする必要があります。 – bgmCoder