我在 server2012、IIS8 上有 2 个域
www.abc.com 和 www.xyz.com
mailenable 的工作方式如下:www.xyz.com/mewebmail
我希望用户像这样访问他们的邮件:webmail.abc.com
这意味着我需要将 webmail.abc.com 域名重定向(或 urlrewrite)到 www.xyz.com/mewebmail
我可以重定向它。但访问者会看到他们被重定向了。这是重定向的本质。
我不想让他们看到,我需要重写 url。用户仍然必须认为他们在 www.abc.com 但实际上是在 xyz。
这可能吗?无论我做什么,我都无法成功。网络上没有任何答案可以保留 URL 栏。
请帮助 ?
答案1
在 IIS8 中,可以按照以下步骤操作:
您需要在同一台服务器上的同一个 IIS 站点中托管这两个站点,只需将 www.abc.com 和 www.xyz.com 作为单个站点的绑定即可。
安装IIS URL 重写模块,然后添加一条空白规则,将所有以 webmail.abc.com 作为主机标头的请求重写为 www.xyz.com/mewebmail。web.config 中的部分应类似于以下内容:
<system.webServer>
<rewrite>
<rules>
<rule name="webmail">
<match url="(.+)" />
<conditions>
<add input="{SERVER_NAME}" pattern="webmail\.abc\.com" />
</conditions>
<action type="Rewrite" url="mewebmail/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
您只能在单个站点内重写 URL,如果您需要切换站点,则必须使用重定向,用户会在地址栏中注意到这一点。