301 重定向在 IIS 7 中不起作用

发布于 2024-12-26 12:40:45 字数 697 浏览 0 评论 0原文

我需要创建这个 301 重定向规则: /blog/item.asp?n=12817 重定向到 /blog/item/12817

我使用以下参数在 IIS URL 重写模块中创建了一条规则:

模式:^blog/item.asp\?n=([0-9]+)

重定向网址:blog/item/{R:1}

当我在 IIS 中测试它时,它工作正常它创造了这个我的 web.config 中的规则:

<rule name="Asp classic Legacy 301 redirect" stopProcessing="true">
   <match url="^blog/item.asp\?n=([0-9]+)" />
   <action type="Redirect" url="blog/item/{R:1}" appendQueryString="true" />
</rule>

但是当我在浏览器中导航到 /blog/item.asp?n=12817 时,它仍然显示 找不到资源。 错误text 请求的URL:/blog/item.asp

为什么可以?我需要在其他地方切换吗?

谢谢

I need to create this 301 redirect rule:
/blog/item.asp?n=12817 redirect to /blog/item/12817

I created a rule in IIS URL Rewrite module with these parameters :

Pattern: ^blog/item.asp\?n=([0-9]+)

redirect url: blog/item/{R:1}

When I test it in IIS it works fine and it created this rule in my web.config:

<rule name="Asp classic Legacy 301 redirect" stopProcessing="true">
   <match url="^blog/item.asp\?n=([0-9]+)" />
   <action type="Redirect" url="blog/item/{R:1}" appendQueryString="true" />
</rule>

But still when I navigate to /blog/item.asp?n=12817 in browser it shows me The resource cannot be found. error with text Requested URL: /blog/item.asp

Why can it be? Do I need to switch something else somewhere?

Thanks

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

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

发布评论

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

评论(1

违心° 2025-01-02 12:40:45

好的,我创建了另一个有效的规则:

<rule name="Asp classic legacy 301 redirect">  
  <match url="blog/item\.asp$" />  
    <conditions>  
      <add input="{QUERY_STRING}" pattern="n=(\d+)" />  
    </conditions>  
    <action type="Redirect" url="blog/item/{C:1}" redirectType="Permanent" appendQueryString="false"/>  
</rule> 

仍然想知道为什么 Url 重写模块会生成不起作用的规则?

Ok, I created another rule which works:

<rule name="Asp classic legacy 301 redirect">  
  <match url="blog/item\.asp$" />  
    <conditions>  
      <add input="{QUERY_STRING}" pattern="n=(\d+)" />  
    </conditions>  
    <action type="Redirect" url="blog/item/{C:1}" redirectType="Permanent" appendQueryString="false"/>  
</rule> 

Still wondering why would Url rewriting module generates rules which don't work?

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