www.site.com/site/
代替
www.site.com/site/index.php
www.site.com/articleName/
代替
www.site.com/articleName.php
它已经存在了这么久,但我似乎在任何地方都找不到关于它的文章!
我知道你可以简单地用目录和 index.php 文件来做,但我敢肯定大多数网站不会那样做......
这些人是怎么做到的?除了看起来漂亮干净的 URL 之外,它还有什么好处?
一种方法是使用Apache 的 mod_rewrite 模块。
我确定还有其他人...
对于 Apache/PHP,主要使用 ( .htaccess )重写规则。对于 IIS/ASP 站点,通常使用URL 重写模块 ,但还有许多其他技术(例如:处理所有不存在的 URL 并确定如何处理请求的“特殊 404 处理程序”)。
重写规则可以(来)非常复杂或非常简单;重写规则可用于 url 中的每个方法(或操作),或者它可以简单到将每个请求传递给相同的“index.php”(或等效项)并让代码处理其余的找出要做什么做。
为什么完成了?主要是因为 SEO 原因或“容易记住的 url”(现在谁输入了完整的 url?)或“用户友好的 url ”。您可能想查看维基百科上的这篇文章,其中还指出
该技术在用于生成网页的文件和呈现给外界的 URL 之间增加了一定程度的分离。
您可以在 linux 上使用 modrewrite,为 iis 6 或 7 使用 isapi rewrite 或为 iis 7.5+ 使用 url 重写模块。
在 SO 中搜索[friendly-url]
以找到答案。