0

我在做一个房地产网站。让我的客户的特色属性有自己独特的 URL 是理想的,例如:

www.realestatewebsite.com/featured/123-fake-st/

我正在为我的客户构建一个 CMS,以便他们可以在管理后端添加/删除特色属性,这意味着我需要编写一个程序来根据他们通过在数据库中输入的地址自动为他们添加新 URL CMS。

我是 URL 重写的新手。解决此问题的最佳方法是什么?我曾考虑在 web.config 中使用 RewriterConfig,但后来我担心在编写向 web.config 文件添加新规则的程序时会遇到问题。我曾考虑在 RewriterRule 中使用正则表达式来查找 URL 中 /featured/ 之后的任何内容,但是如果我只是在 LookFor 中使用地址,那么它如何知道在 SendTo 中使用哪个属性 ID?

如果我可以让一个文件将“/featured/”之后的地址放入一个字符串中,在数据库中查找地址并检索属性 ID,然后以这种方式重定向用户,那将是理想的。

正如我所说,我是 URL 重写的新手,如果有人能指出我正确的方向,那就太好了。

谢谢!

-亚伦

4

2 回答 2

0

有不同的方法可以做到这一点。所有解决方案的共同点如下:

  1. 设置一个算法来创建 URI 并将它们存储在数据库中(将空间更改为 - 是实现此目的的简单方法。
  2. 通过将地址字符串作为参数来路由 URI

路由可以通过多种方式完成。

如果您控制了服务器,或者他们控制了服务器,则您可以在其服务器上的 IIS 实例上设置 IIS 重写(良好的启动器 URI)。

如果它托管在 ISP 上,您可能没有此选项,并且必须使用 IIS 重写,并且必须使用 ASP.NET 路由。是一篇很好的文章,可以开始理解这一点。如果您使用的是 MVC,则路由是“内置的”。

于 2011-08-09T20:46:18.340 回答
0

我建议使用IIS7 的 URL 重写模块,看这里: http ://learn.iis.net/page.aspx/460/using-the-url-rewrite-module/

于 2011-08-09T20:46:51.587 回答