This documentation is archived and is not being maintained.

HttpContext.RewritePath Method (String, String, String, Boolean)

Rewrites the URL using the given virtual path, path information, query string information, and a Boolean value that specifies whether the client file path is set to the rewrite path.

Namespace:  System.Web
Assembly:  System.Web (in System.Web.dll)

public void RewritePath(
	string filePath,
	string pathInfo,
	string queryString,
	bool setClientFilePath


Type: System.String
The virtual path to the resource that services the request.
Type: System.String
Additional path information to use for the URL redirect. For more information, see PathInfo.
Type: System.String
The request query string to use for the URL redirect.
Type: System.Boolean
true to set the file path used for client resources to the value of the filePath parameter; otherwise false.


The path parameter is not in the current application's root directory.


The filePath parameter is not in the current application's root directory.

The filePath parameter does not include the content of the pathInfo parameter. For the URL, the filePath parameter is, and the pathInfo parameter is tail.

To ensure that the virtual path that is used to construct paths to resources is not modified, set the setClientFilePath parameter to false. A common scenario in which you might want to set setClientFilePath to false is when you need to rewrite the URL, and you are using themes and redirecting the URL to a resource located in a different folder than the requested resource.

URL rewriting is useful when you want to restructure the pages in your Web application, and you want to make sure that people who have bookmarked old URLs can still use them after you have moved pages. URL rewriting enables you to transparently forward requests to the new page location.

If you want to enable a site to use URLs that are more user-friendly and are optimized for search engines, a more robust alternative is to use ASP.NET routing. For more information, see ASP.NET Routing.

For a code example, see the RewritePath(String) method overload.

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.