Saya memiliki bagian ini di web.config saya:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
<security>
<authentication>
<anonymousAuthentication enabled="true" />
<windowsAuthentication enabled="true" />
</authentication>
</security>
</system.webServer>
IIS7 lumpuh dan mengeluh tentang bagian otentikasi:
Modul AnonymousAuthenticationModule
Notification AuthenticateRequest
Handler StaticFile
Error Code 0x80070021
Kesalahan Konfigurasi Bagian konfigurasi ini tidak dapat digunakan di jalur ini. Ini terjadi ketika bagian dikunci di tingkat induk. Penguncian secara default (overrideModeDefault = "Deny"), atau diatur secara eksplisit oleh tag lokasi dengan overrideMode = "Deny" atau warisan allowOverride = "false".
Config Source
69: <authentication>
70: <anonymousAuthentication enabled="true" />
Jadi cara yang biasa untuk menyelesaikan ini adalah dengan masuk %windir%\system32\inetsrv\config\applicationHost.config
dan membuka bagian:
<sectionGroup name="system.webServer">
<sectionGroup name="security">
<section name="access" overrideModeDefault="Deny" />
<section name="applicationDependencies" overrideModeDefault="Deny" />
<sectionGroup name="authentication">
<section name="anonymousAuthentication" overrideModeDefault="Allow" />
<section name="basicAuthentication" overrideModeDefault="Allow" />
<section name="clientCertificateMappingAuthentication" overrideModeDefault="Allow" />
<section name="digestAuthentication" overrideModeDefault="Allow" />
<section name="iisClientCertificateMappingAuthentication" overrideModeDefault="Allow" />
<section name="windowsAuthentication" overrideModeDefault="Allow" />
</sectionGroup>
(sebagai alternatif, appcmd unlock config
).
Yang aneh: Saya sudah melakukan itu dan masih mengeluh.
Saya mencari Lokasi (MVC adalah nama situs web saya yang merupakan akar dari semua situs yang saya gunakan):
<location path="MVC" overrideMode="Allow">
<system.webServer overrideMode="Allow">
<security overrideMode="Allow">
<authentication overrideMode="Allow">
<windowsAuthentication enabled="true" />
<anonymousAuthentication enabled="true" />
</authentication>
</security>
</system.webServer>
</location>
Masih meledak. Saya bingung mengapa ini terjadi. Saya tidak dapat menghapusnya dari web.config, saya ingin menemukan masalah root.
Apakah ada cara untuk mendapatkan informasi spesifik dari IIS yang aturannya pada akhirnya menyangkal saya?
Sunting: Saya dapat memperbaiki ini menggunakan konsol manajemen IIS7 dengan pergi ke root (mesin saya) dan mengklik "Edit Konfigurasi" dan membuka kunci bagian di sana. Masih saya ingin tahu apakah ada cara yang lebih baik karena saya tidak dapat menemukan file yang sebenarnya dimodifikasi.