有没有办法在网站的子文件夹中运行 ASP.NET 网站?
例如,假设我想在我的网站上名为“wiki”的文件夹中运行螺丝转 wiki ( http://www.screwturn.eu/ ),我可以更改螺丝转网站的 web.config 来告诉它它在“wiki”文件夹中运行?(就像说 "~/" = "/wiki/")
然后,wiki 将在“/wiki/bin”中的“~/bin”中找到其程序集,并且对于新根目录下的所有其他文件夹也是如此。
有没有办法在网站的子文件夹中运行 ASP.NET 网站?
例如,假设我想在我的网站上名为“wiki”的文件夹中运行螺丝转 wiki ( http://www.screwturn.eu/ ),我可以更改螺丝转网站的 web.config 来告诉它它在“wiki”文件夹中运行?(就像说 "~/" = "/wiki/")
然后,wiki 将在“/wiki/bin”中的“~/bin”中找到其程序集,并且对于新根目录下的所有其他文件夹也是如此。
小菜一碟,您可以将虚拟目录添加到 IIS 网站的根目录并将其指向您网站的路径,或者将其放置在网站根目录中的物理目录,然后通过右键单击将其变成应用程序在 IIS 管理控制台中,转到属性并单击应用程序名称旁边的“创建”。
您需要在根 web.config 文件中停止配置继承,以便 wiki web.config 不会从根 web.config 读取任何内容。
正如其他人指出的那样。基本上你需要把它放在你的子应用程序Web.config中,当然你还需要配置域(子域等),IIS设置也是如此。
<configuration>
<location path="." inheritInChildApplications="false">
//your code here
<system.web>
//your code here
</system.web>
//your code here
</location>
</configuration>
我最近必须这样做,并且在将 wiki 文件夹设为应用程序(如前面的答案中所建议的那样)后,我还必须在 Wiki 应用程序的顶层放置一个虚拟的“App_Themes -> Default”文件夹,因为存在父应用程序的 Web.config中的<pages styleSheetTheme="default" theme="default">
标记。小技巧,但那是我喜欢在 Asp.Net 中配置我的样式的方式,我不想改变它。
简短的回答是可以。无需在 Web.Config 中指定文件夹的位置。