IIS URL 重写所有入站 URL?

发布于 2024-08-27 12:15:16 字数 796 浏览 7 评论 0原文

希望这是一个简单的问题,尽管我发现使用谷歌不可能自己回答这个问题!

我在 IIS 上有一个网站,其 URL http://www.contoso.com/ 指向 C :\www\public\

已进行强制目录重组,因此现在最初驻留在 C:\www\public\ 中的所有数据(Default.aspx、Product.aspx 等)现在都驻留在 C:\www\ public\en\ie\ - 但是,IIS 网站文档根目录仍然是 C:\www\public\

因此,本质上,我有很多指向 http://www.contoso.com/Product.aspx?id=1 (等)现在返回 404 错误 - 正确的链接现在是 http://www.contoso.com/en/ie/ Product.aspx?id=1

请考虑到我无法对目录结构或 IIS 文档根进行任何更改...因此我必须使用 URL 重写来解决此问题.

是否可以捕获对 contoso.com/* 的所有请求并将其重写到 contoso.com/en/ie/* ?

Hopefully a simple question although one I have found impossible to answer myself using the Googles!

I have a website on IIS with the URL http://www.contoso.com/ which points to C:\www\public\

There has been a forced directory restructure so now all of the data (Default.aspx, Product.aspx, etc.) that originally resided in C:\www\public\ now resides in C:\www\public\en\ie\ - however, the IIS website document root is still C:\www\public\

So, essentially, I have a lot of inbound links to http://www.contoso.com/Product.aspx?id=1 (etc.) which are now returning 404 errors - the correct link is now http://www.contoso.com/en/ie/Product.aspx?id=1

Please consider that I can make no changes to the directory structure or the IIS document root... so I must solve this issue using URL rewriting.

Is it possible to capture all requests to contoso.com/* and rewrite them to contoso.com/en/ie/* ??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

春花秋月 2024-09-03 12:15:16

正如 Ivo 建议的那样,使用 url 重写,您可以设置与旧 url 模式匹配的入站规则并重定向到新模式

http://learn.iis.net/page.aspx/460/using-url-rewrite-module/

As Ivo suggests, using url rewriting you can set up inbound rules that match the old url pattern and redirect to the new pattern

http://learn.iis.net/page.aspx/460/using-url-rewrite-module/

提赋 2024-09-03 12:15:16

将网站的根目录从 C:\www\public\ 更改为 C:\www\public\en\ie\ ,一切都应该没问题。

如果您因任何原因无法执行此操作,请创建一个自定义 404 页面并重写其中的 url,并使用 301 重定向

请参阅:http://searchengineland.com/url-rewriting-custom-error-pages-in-aspnet-20-12234

Change the root directory of your website from C:\www\public\ to C:\www\public\en\ie\ and everything should be fine.

If you cannot do this for any reason, make a custom 404 page and rewrite to url in there and redirect with a 301

See: http://searchengineland.com/url-rewriting-custom-error-pages-in-aspnet-20-12234

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文