如何配置可选或“无关”的URL?

时间:2008-10-07 19:39:15

标签: url configuration url-rewriting

您将如何配置/处理无关/可选的URL实体(可能是别名)?

SO就是一个很好的例子:

  • stackoverflow.com/questions/99999999 /
  • stackoverflow.com/questions/99999999/ 问题 - 在这里(糟糕的例子,但我想不到更好)

亚马逊网址更加令人困惑(例如,Kindle

  • amazon.com/gp/product/B000FI73MA /
  • amazon.com/的点燃-亚马逊-无线 - 读 - 设备 / DP / B000FI73MA /

[编辑]这可能不是最好的行动方案,但我对这个问题一般都是对任何单一服务器的问题。

5 个答案:

答案 0 :(得分:2)

如果您使用Apache,请查看mod_rewrite

答案 1 :(得分:2)

这种技术通常称为url重写。如果您正在寻找IIS中的解决方案,可以使用 ISAPI rewrite ,这与apache的mod_rewrite非常相似。或者,您可以使用 ASP.Net MVC routing 机制。

答案 2 :(得分:1)

这样的事情(如果手动配置URL):

RewriteRule ^([^\/]+)\/([^\/]+)\/(.*) index.php?controller=$1&view=$2&args=$3

否则我让MVC框架处理它并适当地控制控制器的参数。

答案 3 :(得分:0)

经常使用mod_rewrite,至少在Linux下使用Apache。

答案 4 :(得分:-1)

这是您的网络应用程序的任务,而不是您的网络服务器。

在URL =>文件映射上,如PHP(或静态Web服务器),它很棘手;但是在MVC框架上它很自然,即使在PHP MVC框架上也是如此。