在 IIS 6 中维护和管理快速 URL 重写的最佳方法是什么?

在 IIS 6 中维护和管理快速 URL 重写的最佳方法是什么?

为了达到 SEO 目的,我们需要重写许多 URL,而且这个列表很长。

我想了解好的 URL 重写策略,以便我们可以保留旧 URL,但 301 重定向到更有利于 SEO 的 URL。您使用的 URL 重写系统对性能有何影响?

答案1

如果你有服务器管理员权限,你可以使用ISAPI_重写。这是您在 IIS6 配置中设置的 ISAPI 过滤器。有付费版和免费版 - 不过我只用过免费版。

我已经在几个网站上使用它来做你想做的事情并且我没有发现它有任何性能问题(虽然我还没有正式测试过)。

要设置重定向,您需要将每个重定向 URL 的条目添加到 ISAPI_Rewrite .ini 文件中。语法与 Apache 的 mod_rewrite 非常相似 - 但不完全相同。

来自 ISAPI_Rewrite 站点的示例:

# Translate my-super.product.html to /Product.aspx?ProductID=123
RewriteRule ^/my-super-product\.html$ /Product.aspx?ProductID=123

# Rewrite numeric URLs
RewriteRule ^/Products/P([0-9]+)\.html$ /Product.aspx?ProductID=$1 [L]

您应该咨询文档以获得更全面的用例。

答案2

免疫学与免疫学研究所可以工作,用 C 语言实现为 ISAPI 过滤器,速度非常快。自由的。可以执行 301 重定向以及重写。(对于同一个 URL,有时两者同时进行)。

它包括一个安装程序和 CHM 文档:

替代文本

答案3

尽管我们使用的是 Apache 而不是 IIS,但我们也担心大量重定向的性能问题。我们实施了以下系统:

任何需要重定向的页面通常都会生成 404 Not Found 错误,因为它们不再存在,因此我们只处理 404 的重写。这意味着我们对常规请求没有任何性能损失。

一旦页面生成 404,我们将请求传递给 404 控制器,该控制器检查(缓存的)数据库表并向浏览器呈现重定向标头。如果未找到匹配的页面,我们将呈现常规 404 页面。

由于重定向存储在表中,我们可以将它们集成到我们的 cms 中,例如提供一个选项来从页面的属性管理到页面的所有重定向。或者自动检查指向不存在页面的重定向。

相关内容