サーバーへのサイトの展開中にエラーが発生しました。ホームページをロードしようとしたり、IISの新しいサイトの認証にアクセスしようとすると、エラーが発生します。
構成エラー:この構成セクションはこのパスでは使用できません。これは、セクションが親レベルでロックされている場合に発生します。ロックは、デフォルト(overrideModeDefault = "Deny")、またはoverrideMode = "Deny"または従来の allowOverride = "false"の locationタグによって明示的に設定されます。
詳細はここで見つけることができます シナリオ7 私のhexエラーコードと一致します。
上記のリンク先のサイトで与えられた解決策は、applicationHost.configファイルで、私のエラーで述べたセクションのoverrideModeDefaultに Allow を設定することです。私の場合、system.webServerの Security の下にあります。しかし、サイトがすでに正しくデプロイされているローカルコンピューターのapplicationHost.configを見ると、そのセクションは Deny に設定されています。
この解決策が正しければ、私のローカルインスタンスは同じweb.configでどのように動作しますか?私のapplicationHost.configによると、そのセクションはロックされるべきですが、そうではありません。 applicationHost.configファイルは変更しないほうがいいでしょう。そのサーバーで実行されているサイトは他にもたくさんあるからです。別の解決策はありますか?
私は同じ問題を抱えていました。 Web上で見つけた場所を覚えていないでください。
ところで、私はWindows 7を使用しています。
IIS Manager を使用してこれらの設定を編集することもできます。
これの世話 学ぶIIS記事 :
IISのルートから 機能の委任 を使用する
その後、各マシンレベルの読み取り/書き込み権限を制御できます。そうしないと、overrideMode = "Deny"エラーが発生します。
Windows Server 2012 および IIS 8 の場合、手順は同様です。
Web Server (IIS)
とApplication Server
をインストールする必要があります。また、Application Server
の下にオプションのWeb Server (IIS) Support
も必要です。
“ C:\ Windows\System32\inetsrv\config”を参照してください(ここでは管理者権限が必要になります)。
注 :IISExpressおよびVisual Studio 2015では、applicationHost.configは$(solutionDir).vs\config\applicationhost.config
に格納されています。
エラーメッセージページの「config source」部分に表示されているセクションを見つけます。私にとってこれは通常「モジュール」または「ハンドラ」です。
overrideModeDefault
属性をAllow
に変更します
そのため、行全体は次のようになります。
<section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Allow" />
ファイルを保存した後、ページは私のブラウザで問題なくロードされました。
あなたはハンドラのロックを解除する必要があります。これは、次のcmdコマンドを使用して実行できます。
%windir%\system32\inetsrv\appcmd.exe unlock config -section:system.webServer/handlers
IIS 8でこのエラーが発生している人々のための別の情報が、私の場合はMicrosoft Server 2012プラットフォームにありました。 appcmdを実行した後に発生した他のエラーとの戦いに数時間費やしました。結局、私はWebサーバーの役割を削除して再度インストールすることでそれを修正することができました。
次のように、サーバーレベルで関連するIIS構成設定のロックを解除してみます。
これら2つのコマンドを昇格したコマンドプロンプトから実行する必要がありました。
%windir%/system32/inetsrv/appcmd unlock config /section:anonymousAuthentication
%windir%/system32/inetsrv/appcmd unlock config -section:windowsAuthentication
On Windows Server 2012 with IIS 8 ASP.NET 4.5 featureを有効にして解決しました
それから kenの答えに続いて 。
これを修正するには、IIS Express applicationhost.configを開きます。このファイルはC:\ Users [あなたのユーザー名]\Documents\IISExpress\config\applicationhost.configに格納されています。
VS2015 +用の更新:設定ファイルの場所は$(solutionDir).vs\config\applicationhost.configです。
次の行を探す
<section name="windowsAuthentication" overrideModeDefault="Deny" />
<section name="anonymousAuthentication" overrideModeDefault="Deny" />
<add name="WindowsAuthenticationModule" lockItem="true" />
<add name="AnonymousAuthenticationModule" lockItem="true" />
これらの行をに変更します
<section name="windowsAuthentication" overrideModeDefault="Allow" />
<section name="anonymousAuthentication" overrideModeDefault="Allow" />
<add name="WindowsAuthenticationModule" lockItem="false" />
<add name="AnonymousAuthenticationModule" lockItem="false" />
保存してAsp.netページを更新します。
IIS ExpressおよびVS 2015では、$(solutionDir).vs\config\applicationhost.configにapplicationHost.configファイルのコピーがあるため、変更を加える必要があります。このリンクを見なさい: http://digitaldrummerj.me/iis-express-windows-authentication/ /
これらの行が以下のように変更されていることを確認してください。
<section name="windowsAuthentication" overrideModeDefault="Allow" />
<section name="anonymousAuthentication" overrideModeDefault="Allow" />
<add name="WindowsAuthenticationModule" lockItem="false" />
<add name="AnonymousAuthenticationModule" lockItem="false" />
私の場合は、サーバー上で.NET Framework Featuresの下で "HTTP Activation"が有効になっていないということでした。だからWindows Server 2012のために私のために働いた解決策は次のとおりでした。
サーバーマネージャ - >役割と機能の追加 - >機能 - >あなたが使いたいバージョンの.NET Frameworkの下で "HTTP Activation"がチェックされていることを確認
機能を有効にするPowershellの方法(Windows Server 2012以降) - 必要に応じてトリミング
Install-WindowsFeature NET-Framework-Core
Install-WindowsFeature Web-Server -IncludeAllSubFeature
Install-WindowsFeature NET-Framework-Features -IncludeAllSubFeature
Install-WindowsFeature NET-Framework-45-ASPNET -IncludeAllSubFeature
Install-WindowsFeature Application-Server -IncludeAllSubFeature
Install-WindowsFeature MSMQ -IncludeAllSubFeature
Install-WindowsFeature WAS -IncludeAllSubFeature
私はこのNiceメッセージを受け取ったときサブフォルダのSSL設定を変更する必要がありました。私の場合、次の行動が私を助けてくれました。
C:\ Windows\System32\inetsrv\config\applicationHost.configを開きました
また、値をoverrideModeDefault = "Deny"から "Allow"に変更しました。
<sectionGroup name="system.webServer">
...
<sectionGroup name="security">
<section name="access" overrideModeDefault="Allow" />
</sectionGroup>
私の場合、それは他の何かでした。
新しいバージョンのVisual Studioにソリューションをロードしたとき、VSは明らかに新しいプロジェクト固有のapplicationhost.configファイルを作成しました。
MySolutionDir\.vs\config\applicationhost.config
既にカスタマイズされているグローバルIIS Express設定の代わりに、新しい設定の設定を使用し始めました。
私の場合、これは設定が必要な設定でした。もちろんそれはあなたにとって何か他のものかもしれません:
<section name="ipSecurity" overrideModeDefault="Allow" />
私の場合、間違った設定ファイルを操作していたため、このエラーが発生しました。
私はこれをやっていた:
Configuration config = serverManager.GetWebConfiguration(websiteName);
ConfigurationSection serverRuntimeSection = config.GetSection("system.webServer/serverRuntime");
serverRuntimeSection["alternateHostName"] = hostname;
正しいコードの代わりに:
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection serverRuntimeSection = configApp.GetSection("system.webServer/serverRuntime", websiteName);
serverRuntimeSection["alternateHostName"] = hostname;
言い換えれば、Webサイトのセクションを持つ(またはセクションを持つことができる)グローバルファイルC:\ Windows\System32\inetsrv\config\applicationHost.configではなく、Webサイトのweb.configを操作しようとしていました。変更しようとしていた設定は、applicationHost.configファイルにのみ存在します。
エラーは、設定セクションが親レベルでロックされていることを示しています。したがって、問題を解決するのは直接1つの設定ファイルにはなりません。継承を見るには IISのファイル階層と継承をたどるには、以下のリンクをチェックしてください。
https://msdn.Microsoft.com/ja-jp/library/ms178685.aspx
だから、あなたは以下の順序でアプリの設定を確認する必要があります
これらすべての設定を1から6の順序で慎重に実行してください。
あなたはこれを試すことができます:
エラーを拒否しているアプリケーションパスに移動し、右クリックします
[プロパティ] - > [セキュリティ]タブ
その中で、権限を変更し、読み書きチェックボックスをチェックします。それがうまくいけばエラーなしで動作します。
Vista Home PremiumにIIS 7をインストールした後で、この同じ問題を受けました。エラーを修正するために、Windows\system32\inetsrvにあるapplicationHost.configファイルにある次の値を変更しました。
セクションにある以下のすべての値を変更します - >
<div mce_keep="true"><section name="handlers" overrideModeDefault="Deny" /> change this value from "Deny" to "Allow"</div>
<div mce_keep="true"><section name="modules" allowDefinition="MachineToApplication" overrideModeDefault="Deny" /> change this value from "Deny" to "Allow"</div>
Windows Server 2008およびIIS 7の場合も、手順は同様です。 これを参照してください。 http://msdn.Microsoft.com/ja-jp/library/vstudio/bb763178(v=vs.100).aspx
役割サービスの追加では、「アプリケーション開発機能」が表示されます。
機能を確認(有効)してください。全部チェックしました。
私はoverride = "Allow"の値を入力していたという問題を抱えていました(既に述べたように)......しかしx64ビットシステムでは.......私の32のメモ帳++はそれらをファントム保存していました。メモ帳(x 64ビットO/S上の64ビットアプリケーション)に切り替えると、設定を保存できました。
見る :
http://dpotter.net/technical/2009/11/editing-applicationhostconfig-on-64-bit-windows/ /
関連するテキスト:
私が実行している問題の1つは、applicationHost.configを表示し、おそらく編集することを必要としました。このファイルは、%SystemRoot%\ System32\inetsrv\configにあります。とてもシンプルに思えます。私はコマンドラインからそれを簡単に見つけることができました、しかし、私が私の大好きなエディタ(Notepad ++)でそれをロードするようになったとき、私はファイルが見つかりませんエラーを得ました。 System32フォルダが32ビットアプリケーション用にSysWOW64にリダイレクトされていることがわかりました。 32ビットアプリを使用してSystem32フォルダを表示する方法はないようです。幸運なことに、64ビット版のWindowsには64ビット版のメモ帳が付属しています。私がそれを嫌う限り、少なくともそれはうまくいく。
以下は私のために働いた:
プロジェクトのプロパティに移動します。 WebタブLocal IISに設定し、特定のページを設定します。
Windows 7とVisual Studio 2013があります。
私の場合は、ブラウジングに加えてIISの認証設定を更新しようとしたときにこのエラーが発生していました。 web.config自体から認証設定を削除することで、このエラーを取り除くことができました。問題のある構成セクションを削除することは、サーバーの役割と機能を変更し過ぎることよりも侵襲性が低く、場合によっては望ましいことがあります。
セクションが削除されました:
<security>
<authentication>
<windowsAuthentication enabled="true" />
</authentication>
</security>
私はこの問題を解決しました
cmdに行き、aspnet_regiis -iを実行してください。
誰かに役立つことを願っています。
レジストリに以下のキーを追加すると問題が解決しました:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ASP.NET_64\Performance
私がこれらのステップを試みたとき私はエラーを受け続けました:
それから私はイベントビューアを見て、このエラーを見ました:Unable to install counter strings because the SYSTEM\CurrentControlSet\Services\ASP.NET_64\Performance key could not be opened or accessed. The first DWORD in the Data section contains the Win32 error code.
問題を解決するために、次のレジストリエントリを手動で作成しました。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\ASP.NET_64\Performance
そして次の手順に従った:
これは私にはうまくいきましたまた、IIS 8では、サーバーをIIS Expressに変更することでこの問題を解決できます。ジャンプ - >プロパティ Webで、ドロップダウンからIIS Expressとしてサーバーを選択してから、ソリューションを再構築します。
私は同じ問題を抱えていました。
アプリケーションレベル(Web.Config)で変更するには
Web.configから信頼レベルを削除してください:
私は私が彼らのサーバーを制御することができないホスティングサーバーで私のウェブサイトをホストしようとしていたときに実際に私はこのエラーを受けていました。私のアプリケーションweb.configから上記の行を削除することは私の問題を解決しました。