URL重写
一个软件组件,执行重写统一资源定位器,修改它们的外观。此修改称为URL重写。它是在web应用程序中实现URL映射或路由的一种方法
此条目没有列出任何参考或来源。 (2022年7月31日) |
URL重写(英语:URL Rewriting)是一种REST的相关技术,它可以在Web Server中,针对用户所提供的URL进行转换后,再传入Web Server中的程序处理器。
示例
最常见的用法,就是将一组URL层次结构字符串,转换成带有查询字符串(query string)的URL,或是反向转换,例如: http://www.somebloghost.com/Blogs/Posts.php?Year=2006&Month=12&Day=10
经过URL重写后,可以变成:
http://www.somebloghost.com/Blogs/2006/12/10/
另一个例子,下面的URL:
http://www.somehost.com/Blogs/2006/12/
经过URL重写后,可转换成:
http://www.somehost.com/Blogs.aspx?year=2006&month=12
因此,用户可以使用较直觉的方式来输入URL(这也是REST的主要目的),是搜索引擎优化(SEO)的作法之一。而应用程序开发者可以利用这个机制来将参数隐藏起来,可避免让网络上的恶意用户收集到有利于发动攻击的信息。
支持URL Rewriting的处理引擎
- mod_rewrite (页面存档备份,存于互联网档案馆),Apache官方的URL Rewriting模块
- mod_alias(页面存档备份,存于互联网档案馆),Apache 1.3的URL别名模块
- URL Rewrite Module for IIS 7.0,由微软官方发展
- IIS Mod-Rewrite。
- IISRewrite。
- ISAPI_Rewrite (页面存档备份,存于互联网档案馆)。
- URL Replacer (页面存档备份,存于互联网档案馆)。
- Ionic's ISAPI Rewrite Filter (IIRF),无须 .NET,免费的开放源代码组件。
- .NET URL Rewriter and Reverse Proxy,免费的 URL Rewriting 与反向代理组件,支持 .NET 2.0/3.5,IIS 6.0/7.0。
- VirtualUrl.NET。
- UrlRewriter.NET (页面存档备份,存于互联网档案馆),免费的开放源代码组件,支持.NET 1.1/2.0。
- URLRewriting.NET,免费的开放源代码组件,ASP.NET 2.0适用。
- VirtualUrl.NET for ASP.NET 2。
J2EE Servlet
- HttpRedirectFilter (页面存档备份,存于互联网档案馆)(开放源代码)。
- UrlRewriteFilter (页面存档备份,存于互联网档案馆)(开放源代码-BSD)。
Lighttpd (lighty)
- mod_rewrite (页面存档备份,存于互联网档案馆)(lighttpd是一套开放源代码的网页服务器)。