我需要帮助解决 IIS 配置“难题”。这是我所拥有的:
1 域: example.com
4 个网络文件夹:
- [root]\Global - 单页 HTML 站点
- [root]\Classic1 - 经典 ASP 站点
- [根]\Classic2 - .Net 2.0 站点
- [root]\Redesign - 具有地理位置的 .Net 4.0 站点
带有 IIS 7 的 Windows Server 2008 R2
背景
example.com是一个按国家/地区提供本地化站点的网站。含义example.com/us适用于美国用户,example.com /uk适用于欧洲用户,example.com /AU适用于澳大利亚用户等。
example.com共有 20 个不同的国家/地区站点,其中example.com有一个带有国家/地区链接索引的登录页面。
目标
重新设计是一个开发的新站点,它应该接管一切,这样我们就可以摆脱其他 3 个站点。它在登录页面上具有地理定位功能,这将确定在网站上显示哪组特定于国家/地区的数据。根据检测到的国家/地区,它将通过将国家/地区代码附加到 URL 来重写 URL,例如example.com/au。
但是,我的任务是一次只启动几个国家/地区的Redesign,因为数据输入人员需要时间来设置每个国家/地区。
这是现在需要发生的事情:
- example.com => [root]\Global
- example.com\uk => [根]\Classic1
- example.com\us => [root]\Classic2
- example.com\au => [根]\重新设计
- example.com\xx => [root]\Classic1
……等等。
问题
首先,我在 IIS 中创建了一个指向 [root]\Global 的站点。
然后,我为每个国家/地区创建了一个虚拟目录,并让每个国家/地区都指向相应的目录。
但是,因为Redesign有地理位置,它会自动将 URL 重写为:example.com\au => example.com\au\us
现在,如果我将Redesign设置为全局站点,然后将其他经典站点设置为虚拟目录,则地理位置将与虚拟目录路径冲突:
- example.com\us =? [根]\重新设计
- example.com\us =? [根]\经典2
这就是我卡住的地方。有人有任何反馈和建议吗?