我正在努力为ASP.NET 4.51 WebForms项目找到web.config的权威模式指南。随着各种网络配置,我看到以下两个,我想知道两者是正确的,或者确切的区别是什么。
system.webServer的父节点是否为以下节点配置:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
</system.webServer>
</configuration>
或者也可以在位置标记内:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location>
<system.webServer>
</system.webServer>
</location>
</configuration>
答案 0 :(得分:1)
location元素将引用站点的特定部分,例如,Administration位置或其他内容。
例如,以下web.config示例仅将<system.webServer>
元素中的任何设置应用于位于站点的/ admin目录中的任何资源:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="~/admin">
<system.webServer>
<security>
<authentication mode="Forms">
<forms name=".ASPXFORMS" loginUrl="/admin/logon.aspx" protection="All" path="/admin" timeout="30" />
</authentication>
</security>
</system.webServer>
</location>
</configuration>
对于应用程序范围的<system.webServer>
设置,提供的第一个示例(没有location元素)是可行的方法。