URL重写
URL重写(英语:)是一种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的处理引擎
Apache HTTP Server
- mod_rewrite (页面存档备份,存于),Apache官方的URL Rewriting模块
- mod_alias(页面存档备份,存于),Apache 1.3的URL别名模块
Microsoft Internet Information Server (IIS)
- 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是一套开放原代码的网页服务器)。
参考数据
外部链接
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.