我正在使用带有IIS7的Windows Server 2008。 我需要将访问www.mysite.com
的用户重定向到wwww.mysite.com/menu_1/MainScreen.aspx
。 这是我项目的文件结构:
-Sites
-Default Web Site
-Menu_1
-MenuService
-VscWebService
我非常感谢任何对此的帮助。
我正在使用带有IIS7的Windows Server 2008。 我需要将访问www.mysite.com
的用户重定向到wwww.mysite.com/menu_1/MainScreen.aspx
。 这是我项目的文件结构:
-Sites
-Default Web Site
-Menu_1
-MenuService
-VscWebService
我非常感谢任何对此的帮助。
在这里,您可以将以下代码添加到您的 web.config 文件中:
<system.webServer>
<rewrite>
<rules>
<rule name="Root Hit Redirect" stopProcessing="true">
<match url="^$" />
<action type="Redirect" url="/menu_1/MainScreen.aspx" />
</rule>
</rules>
</rewrite>
</system.webServer>
它将执行301永久重定向(URL将在浏览器中更改)。如果您希望这样的“重定向”是不可见的(重写,内部重定向),则使用此规则(唯一的区别是将"Redirect"替换为"Rewrite"):
<system.webServer>
<rewrite>
<rules>
<rule name="Root Hit Redirect" stopProcessing="true">
<match url="^$" />
<action type="Rewrite" url="/menu_1/MainScreen.aspx" />
</rule>
</rules>
</rewrite>
</system.webServer>
http://www.domain.com/
)时,路径将为空,因此使用 ^$
(前导斜杠会自动从路径中删除;在 Apache 中也是如此)。 - LazyOne<httpRedirect>
支持通配符,因此您可以按照以下方式进行配置: <system.webServer>
<httpRedirect enabled="true">
<add wildcard="/" destination="/menu_1/MainScreen.aspx" />
</httpRedirect>
</system.webServer>
请注意,在IIS上需要启用“HTTP重定向”功能 - 请参见HTTP重定向
我无法通过已接受的答案使其生效,主要是因为我不知道在哪里输入那段代码。我到处寻找关于URL Rewrite工具的解释,但始终找不到任何有意义的内容。最终我使用了IIS中的HTTP Redirect工具。
希望这可以帮到您。
http://server/
重定向/重写为http://server/Folder/
,访问http://server/Folder
(注意没有斜杠)将被重定向到http://server/Folder/Folder
,很可能会返回404错误。 - arid1