purlhub

Support Center

Microsoft IIS PATH based PURL hosting setup

Last Updated: Dec 28, 2012 11:21AM MST

Configuring your Microsoft IIS 7.0 > web server to support PATH based PURL hosting


purlHub's Landing Page technology supports all forms of Personalized URLs, providing marketers options and maximum control over the URL format.  Path based pURL resolution (i.e. http://www.mysSite.com/JohnSmithX3) is a popular format, as it co-associates the brand with the individual in a familiar URL fashion.

As a fallback, purlHub also supports Query String based pURL resolution (i.e. http://www.mySite.com/index.html?_purl=JohnSmithX3).  This is most useful for Landing Page testing and development in offline mode.  But has additional applications for cases where web server administrative support (IT) is limited, and the  and the PURL URLs are distributed exclusively via email or a similar fashion supporting HTTP links.

This article covers the additional steps required to setup your Microsoft IIS server to support path based pURL resolution.  

With path based pURLs, the personal code is included in the path component of the URL.  To host pages in this fashion, the Landing Page web server needs to be configured to serve a common document for all URL's that contain a personal code (aka: purlCode).  

Assuming that: (1) your Microsoft IIS server is setup and running, (2) you are running a version of Microsoft IIS that supports URL Rewrite, and (3) you've created a Web Site in IIS and its configured to handle requests matching your landing page host name (e.g. www.example.com).  The next step is to verify that the IIS URL Rewrite is installed and enabled.  If not, you'll need to download and install the module.

To enable path based pURLs for your IIS Site, create and add the following text file to the Physical Path of your IIS Site.

FileName: web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <defaultDocument enabled="true">
            <files>
                <add value="index.html" />
            </files>
        </defaultDocument>
        <rewrite>
            <rules>
                <rule name="Bypass Existing Assets" stopProcessing="true">
                    <match url="^.*$" />
                    <conditions logicalGrouping="MatchAny">
                        <add input="{REQUEST_FILENAME}"
                            matchType="IsFile" pattern=""
                            ignoreCase="false" />
                        <add input="{REQUEST_FILENAME}"
                            matchType="IsDirectory"
                            pattern="" ignoreCase="false" />
                    </conditions>
                    <action type="None" />
                </rule>
                <rule name="Pass Through LP" stopProcessing="true">
                    <match url="^.*$" />
                    <action type="Rewrite" url="index.html" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>



This web.config file defines the URL Rewrite configuration and Default Document for your IIS Site.  Replace index.html with the name of your Landing Page HTML document.  The rewrite configuration states that if the requested file does not exist, and is not a sub-directory of your site, then serve the landing page without redirecting.  PURL resolution is handled by the Landing Page document itself.

_

Contact Us

  • Post a Public Question
  • Ask the Community
  • Email Us

Recent Discussions

Ajax-loader-small