????
Current Path : C:/Windows/System32/inetsrv/ |
Current File : C:/Windows/System32/inetsrv/rewrite_readme.htm |
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>URL Rewrite Module Readme</title> <meta http-equiv="Content-Language" content="en-us"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> <style> BODY { FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: verdana; BACKGROUND-COLOR: #ffffff; } HR { COLOR: #000000; HEIGHT: 1px; } H1 { FONT-SIZE: 16pt; COLOR: #000000; } H2 { FONT-SIZE: 15pt; } H3 { FONT-SIZE: 14pt; } H4 { FONT-SIZE: 13pt; } H5 { FONT-SIZE: 12pt; } H6 { FONT-SIZE: 11pt; } ol li{ margin-bottom: 5pt } A:link { COLOR: #000066; } A:visited { COLOR: #000066; } A:hover { COLOR: #660000; } A:active { COLOR: #660000; } .style1 { color: #000066; } </style> <meta content="MSHTML 6.00.6001.18023" name="GENERATOR"> </head> <body> <h1>IIS URL Rewrite Module 2</h1> <h2>Readme</h2> <hr> <h4>Table of Contents</h4> <ul> <li> <a href="#Overview">Overview</a> </li> <li> <a href="#Features">Features</a></li> <li><a href="#InstallationNotes">Installation Notes</a> </li> <ul> <li><a href="#Addition_updates_installed">Additional updates installed</a></li> <li><a href="#KnownIssues">Known Issues</a></li> </ul> <ul> <li><a href="#Configuration_settings">Configuration Settings</a></li> <li><a href="#Troubleshooting">Troubleshooting Installation Issues </a></li> <li><a href="#MoreInfo">For More Information </a></li> </ul> </ul> <hr> <h3><a name="Overview">Overview</a></h3> <p>IIS URL Rewrite Module 2 is an incremental release that includes all the features from version 1.1, and adds support for outbound response rewriting. More specifically, it can be used to:</p> <ul> <li>Implement complex URL rewriting logic by using custom rewrite providers written in .NET.</li> <li>Replace the URLs generated by a web application in the response HTML with a more user friendly and search engine friendly equivalent</li> <li>Modify the links in the HTML markup generated by a web application behind a reverse proxy.</li> <li>Fix up the content of any HTTP response by using regular expression pattern matching.</li> </ul> <p>For more information on capabilities of the module refer to <a href="http://go.microsoft.com/fwlink/?LinkId=157477&clcid=0x409">IIS URL Rewrite Module 2 Overview</a>.</p> <hr> <h3><a name="Features">Features</a></h3> <p>IIS URL Rewrite Module 2 includes the following key features:</p> <ul> <li><strong>Custom rewrite providers</strong>. Custom rewrite providers can be implemented in any .NET language and can be used in cases where built-in rewriting functionality is not sufficient.</li> <li><strong>Rules-based response rewriting engine</strong>. Outbound rules are used to express the logic of what to compare parts of the response with and what to do if comparison was successful. Web server and site administrators can use outbound rules to define complex response rewriting logic.</li> <li><strong>Rewriting within the content of specific HTML tags</strong>. Instead of scanning the entire response for a particular match, the rule can be configured to look only inside of certain HTML tags, such as <a>, <img>, etc. That way the pattern is greatly simplified and the process of applying the rule to the content is much faster comparing to applying the pattern to the entire response.</li> <li><strong>Pre-conditions for outbound rules</strong>. Applying rewrite rules on every response is an expensive operation and is not necessary in majority of the cases. Pre-conditions are used to check the request metadata to determine if outbound rules evaluation should be applied.</li> <li><strong>Setting of server variables and HTTP headers.</strong> Various IIS server variables and HTTP request headers can be set by using rewrite rules.</li> <li><strong>Setting of response HTTP Headers</strong>. Outbound rewrite rules can be used to set response HTTP headers.</li> <li><strong>Tracking capture groups across rule conditions</strong>. The conditions back-referencing logic in URL Rewrite 1.1 worked only against the last matched conditions. In v2 it is possible to configure back-referencing logic to work against all matched conditions.</li> <li><strong>Logging of rewritten URLs</strong>. The module can be configured to log the rewritten URL in IIS W3C logs as opposed to logging an originally requested URL</li> <li><strong>Updated user interface in IIS Manager</strong>. The user interface has been significantly improved to better represent the module configuration and to simplify such common tasks as configuring of rewrite rules and rewrite conditions.</li> </ul> <hr> <h3><a name="InstallationNotes">Installation Notes</a></h3> <p>There are two separate downloadable packages for the module; you will need to download the appropriate package for your version of Windows OS:</p> <ul> <li><a href="http://go.microsoft.com/fwlink/?LinkId=157431&clcid=0x409">IIS URL Rewrite Module 2 - RTW (x86)</a> </li> <li><a href="http://go.microsoft.com/fwlink/?LinkId=157432&clcid=0x409">IIS URL Rewrite Module 2 - RTW (x64)</a> </li> </ul> <p>You will need to run the installation package as an administrator. This can be accomplished by one of the following methods:</p> <ul> <li>Logging in to your server using the actual account named "Administrator". </li> <li>Logging on using an account with administrator privileges and opening a command-prompt by right-clicking the <b>Command Prompt</b> menu item that is located in the <b>Accessories</b> menu for Windows programs and selecting "Run as administrator", then typing the appropriate command listed below for your version of Windows to run the installation: <blockquote> <nobr><tt>msiexec /I <msi_filename></tt></nobr></blockquote> </li> </ul> <p>Note:</p> <ul> <li>If a previous version of IIS URL Rewrite Module, such as v1.0 and v1.1, is already installed then it will be upgraded to the version 2</li> <li>If a RC version of the IIS URL Rewrite Module 2 is already installed, then it will be upgraded to the final RTW version.</li> </ul> <h4><a name="Addition_updates_installed">Additional updates installed</a></h4> <p>The installation package includes several additional components and hotfixes required by URL rewriter. Refer to the KB articles for the hotfixes to get more details. In order to apply the hotfixes correctly without restarting the server, it is necessary to stop WAS service and Web Management service before installing URL Rewrite Module. To stop these services run the following command from an elevated command prompt:</p> <samp>net stop was /y & net stop wmsvc</samp> <p>Once the module has been installed run this command:</p> <samp>net start w3svc & net start wmsvc</samp> <p>The following hotfixes may be installed with URL Rewrite Module 2:</p> <ul> <li>Update for IIS 7.0 FastCGI module (<a href="http://support.microsoft.com/?kbid=954946">KB 954946</a>);</li> <li>Hotfix for IIS 7.0 SetUri function (<a href="http://support.microsoft.com/?kbid=949172">KB 949172</a>)</li> <li>Hotfix for ASP.NET System.Web.dll (<a href="http://support.microsoft.com/?kbid=957660">KB 957660</a>)</li> </ul> <p>Note that the hotfix for ASP.NET System.Web.dll will be installed only if .NET Framework 3.5 SP1 is already installed on the machine. If the .NET Framework 3.5 SP1 was installed after URL rewrite module has been installed, then the hotfix can be applied by re-running the installer for URL Rewrite Module in repair mode.</p> <h4><a name="KnownIssues">Known Issues</a></h4> <ol> <li>Outbound rules are not applied to chunked transfer encoded responses if rewriteBeforeCache is enabled. Set rewriteBeforeCache to false if you need to rewrite responses that are chunked transfer encoded.</li> </ol> <h4><a name="Configuration_settings">Configuration settings</a></h4> <p><strong>Using outbound rewriting with IIS compression</strong></p> <p>Outbound rewriting can only be applied on un-compressed responses. If the response is already compressed then URL Rewrite Module will report an error if any of the outbound rules is evaluated against that response. </p> <p>Oubound rewriting cannot be used together with IIS static compression.</p> <p>Outbound rewriting can be used together with IIS dynamic compression by using the following workaround:</p> <ol> <li>Set the LogRewrittenUrlEnabled registry key:<br> <samp>reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Rewrite /v LogRewrittenUrlEnabled /t REG_DWORD /d 0</samp></li> <li>Make sure that <strong>dynamicCompressionBeforeCache</strong> property is set to false for the /system.webServer/urlCompression configuration element.</li> <li>Re-order the IIS modules to have URL Rewrite module (RewriteModule) run before Dynamic Compression module (DynamicCompressionModule). In the IIS Manager user interface in the modules's ordered view the Dynamic Compression module should be above the URL Rewrite module. </li> </ol> <p><strong>Disabling internal caching of rewrite rules</strong></p> <p>To disable caching of inbound rewrite rules in URL Rewrite Module run the following command from an elevated command prompt:</p> <samp>reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Rewrite /v RewriteCacheEnabled /t REG_DWORD /d 0</samp> <p><strong>Double encoding detection</strong></p> <p>You can configure <strong>UrlDecode</strong> built-in function to fail if the input data is double encoded by setting �DecodeAllowsDoubleEncoding� to 0 in the registry key. Run the following command from an elevated command prompt:</p> <samp>reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Rewrite /v UrlDecodeAllowsDoubleEncoding /t REG_DWORD /d 0</samp> <p><strong>Disabling inbound or outbound rewrite functionality</strong></p> <p>You can configure URL rewrite to stop applying inbound or outbound rewrite rules. Execute the following commands:</p> <p> <samp>reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Rewrite /v InboundRewriteEnabled /t REG_DWORD /d 0</samp></p> <p> <samp>reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Rewrite /v OutboundRewriteEnabled /t REG_DWORD /d 0</samp></p> <p><strong>Disabling the logging of rewritten URLs</strong></p> <p>To prevent logging of rewritten URL's in the IIS log files use the command below. The rewritten URLs will never be logged even if the rewrite rule is explicitly configured to log rewritten URLs.</p> <p> <samp>reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\InetStp\Rewrite /v LogRewrittenUrlEnabled /t REG_DWORD /d 0</samp></p> <h4><a name="Troubleshooting">Troubleshooting Installation Issues</a></h4> <p>If you encounter any problems during installation, you can run appropriate command listed below for your version of Windows to create a log file that will contain information about the installation process:</p> <blockquote> <nobr><tt>msiexec /L urlrewriteinstall.log /I <msi_filename></tt></nobr></blockquote> <p>You can analyze this log file after a failed installation to help determine the cause of the failure.</p> <h4><a name="MoreInfo">For More Information</a></h4> <p>The following additional resources for the IIS URL Rewrite Module are available on IIS.net:</p> <ul> <li><a href="http://go.microsoft.com/fwlink/?linkid=157430&clcid=0x409">IIS URL Rewrite Module Walkthroughs.</a> Describes how to use it URL Rewrite Module.</li> <li><a href="http://go.microsoft.com/fwlink/?linkid=157477&clcid=0x409">IIS URL Rewrite Module configuration reference.</a> Explains the functionality of the module and provides description of all configuration options.</li> <li>Also, be sure to visit the <a href="http://go.microsoft.com/fwlink/?linkid=120203&clcid=0x409"> <span class="style1">URL Rewrite Forum</span></a> on IIS.NET if you have run into any problems when using the module or have questions or suggestions. </li> </ul> <hr> <p>� 2010 Microsoft Corporation.</p> </body> </html>