我想在同一个 IIS 上托管多个应用程序。问题是我需要使用与 www.example.com 相同的 URL,但目录不同。此外,端口需要为 80,或者至少对最终用户透明,所以我想要像他这样的东西:
www.example.com/app1
www.example.com/app2
问题是 IIS 不允许我创建 2 个具有相同域和相同端口的站点,如果可能的话我不想使用子域。
两个应用程序不应位于同一站点,因为它们是具有不同维护计划的独立应用程序。
有没有办法做到这一点?还是我必须使用子域?
我想在同一个 IIS 上托管多个应用程序。问题是我需要使用与 www.example.com 相同的 URL,但目录不同。此外,端口需要为 80,或者至少对最终用户透明,所以我想要像他这样的东西:
www.example.com/app1
www.example.com/app2
问题是 IIS 不允许我创建 2 个具有相同域和相同端口的站点,如果可能的话我不想使用子域。
两个应用程序不应位于同一站点,因为它们是具有不同维护计划的独立应用程序。
有没有办法做到这一点?还是我必须使用子域?
如果你的目录下有app1和app2目录inetpub/wwwroot,并把它们都配置成应用程序,应该会有你想要的效果。希望这可以帮助...
您是否考虑过使用虚拟目录?这些目录可以使用不同的应用程序池,因此具有不同的维护计划。
除了上述建议之外,您唯一的选择是使用 URL 重写让 IIS 转换传入的 URL。
http://learn.iis.net/page.aspx/460/using-the-url-rewrite-module/
这个问题太老了,但我遇到了同样的问题。
Anirudh Ramanathan 的回答是正确的。
解决方案是在不同的应用程序池中添加新的应用程序。
直接来自微软的文档:
在“连接”窗格中,展开“站点”节点。
右键单击要为其创建应用程序的站点,然后单击添加应用程序。
在别名文本框中,键入应用程序 URL 的值,例如市场营销。此值用于访问 URL 中的应用程序。
如果要选择与“应用程序池”框中列出的应用程序池不同的应用程序池,请单击“选择”。在“选择应用程序池”对话框中,从“应用程序池”列表中选择一个应用程序池,然后单击“确定”。
在物理路径文本框中,键入应用程序文件夹的物理路径,或单击浏览按钮 (...) 浏览文件系统以查找文件夹。
或者,单击连接为以指定有权访问物理路径的凭据。如果您不使用特定凭据,请在 >Connect As 对话框中选择 Application user (pass-through authentication) 选项。
或者,单击测试设置以验证您为应用程序指定的设置。
单击确定。
完整的文档在这里
注意:“单击测试设置以验证您为应用程序指定的设置”可能会产生错误。根据其他 SO 答案,这似乎是一个错误。我忽略了这个警报,一切都运行良好。