Feedback

  • Contents
 

Step 3: Configure IIS

For information about all the installation steps, see Install CIC Web Applications on Microsoft IIS. See also Appendix A: IIS XML Configuration.

To configure IIS

  1. Create a new Site named ININApps in IIS:

    1. Right-click on Sites and choose Add web site.

    2. In the dialog box, set the Content Directory Physical path to the CIC Web Applications folder you previously created in your server's Home Directory.

  2. Remove the .NET Framework version of the application pool:

    1. In the IIS Manager side pane, click Application Pools.

    2. Right-click the newly created ININApps application pool.

    3. Click Basic Settings.

    4. Change the .NET Framework version to No Managed Code.

    5. Click OK.

  3. Enable static content compression on the new Site:

    1. Click the site in IIS Manager.

    2. Double-click the Compression module.

    3. Check Enable static content compression.

    4. Click Apply.

  4. Update the maximum URL and query string size in Request Filtering, if enabled:

    1. Click the site in the IIS Manager.

    2. Double-click on the Request Filtering module, if enabled. If the module doesn't appear, Request Filtering is not enabled.

    3. Select the URL tab in the Request Filtering view.

    4. Click on Edit Feature Settings in the Actions pane.

      1. Update Maximum URL Length (bytes) to 8192.

      2. Update Maximum Query String (bytes) to 8192.

      3. Update Maximum allowed content length (bytes) to something greater than or equal to 20971520.

    5. Click OK.

  5. Add allowed server variables:

    Note: Steps 6 through 10 can alternatively be completed using XML configuration file. See Appendix A for XML configuration.

    1. Click the site in the IIS Manager.

    2. Double-click on the URL Rewrite module.

    3. In the Actions pane, click View Server Variables.

    4. Create the following three server variables by clicking Add in the Actions pane.

      • WEB_APP

      • ICWS_HOST

      • HTTP_ININ-ICWS-Original-URL

  6. Create the rewrite map.

    1. Click the site in the IIS Manager.

    2. Double-click the URL Rewrite module.

    3. In the Actions pane on the right, click View Rewrite Maps.

    4. Click Add Rewrite Map.

    5. Enter MapScheme for the rewrite map name.

    6. In the Actions pane, click Add Mapping Entry.

    7. Type the following:

      Original value:

      New value:

      on

      https

    8. Repeat steps f and g with the following information:

      Original value:

      New value:

      off

      http

  7. Create URL rewrite rules. You will create one inbound rule and two outbound rules.

    1. Click the site in the IIS Manager.

    2. Double-click the URL Rewrite module.

    3. Navigate to the Actions pane and select Add Rule(s).

    4. For each rule, select Blank rule under the appropriate type (Inbound rule or Outbound rule).

    5. Enter the following information for each rule. Tables are provided for ease of copying values, followed by screenshots for each rule.

      Note: Do not add conditions for any of the rules.

      Inbound rule

      This rule allows the client to reach the Session Manager host that ICWS is served from.

      Name

      inin-api-rewrite

      Requested URL

      Matches the Pattern

      Using

      Regular Expressions

      Pattern

      (?:^(.*/)api|^api)/([^/]+)(/.*)

      Ignore case

      checked

      Server Variables

      See Server Variables table below

      Action type

      Rewrite

      Rewrite URL

      (see Configure HTTPS for IIS for HTTPS)

      http://{ICWS_HOST}:8018{R:3}

      Append query string

      checked

      Log rewritten URL

      checked

      Stop processing of subsequent rules

      checked

      Server Variables

      Name

      Value

      Replace

      WEB_APP

      {R:1}

      True

      ICWS_HOST

      {R:2}

      True

      HTTP_ININ-ICWS-Original-URL

      {MapScheme:{HTTPS}}://{HTTP_HOST}{UNENCODED_URL}

      False

      http://knowledge.inin.com/graphics/kbconsole/Q142850148300180/Q142850148300180_first-Image-8.jpg

      Outbound rule 1

      This rule allows the cookies required by ICWS and the client to be located where the client needs them.

      Name

      inin-cookie-paths

      Precondition

      <None>

      Matching scope

      Server Variable

      Variable name

      RESPONSE_Set_Cookie

      Variable value

      Matches the Pattern

      Using

      Regular Expressions

      Pattern

      (.*)Path=(/icws.*)

      Ignore case

      checked

      Action type

      Rewrite

      Value

      {R:1}Path=/{WEB_APP}api/{ICWS_HOST}{R:2}

      Replace existing server variable value

      checked

      Stop processing of subsequent rules

      unchecked

      http://knowledge.inin.com/graphics/kbconsole/Q142850148300180/Q142850148300180_first-Image-9.jpg

      Outbound rule 2

      This rule adjusts the location header

      Name

      inin-location-paths

      Precondition

      <None>

      Matching scope

      Server Variable

      Variable name

      RESPONSE_location

      Variable value

      Matches the Pattern

      Using

      Regular Expressions

      Pattern

      ^/icws/.*

      Ignore case

      checked

      Action type

      Rewrite

      Value

      /{WEB_APP}api/{ICWS_HOST}{R:0}

      Replace existing server value

      checked

      Stop processing of subsequent rules

      unchecked

      http://knowledge.inin.com/graphics/kbconsole/Q142850148300180/Q142850148300180_first-Image-10.jpg

      When you are finished, you will have one inbound rule and two outbound rules:

  8. (Optional) Increase the cache sensitivity thresholds if you have application load performance issues.

    1. In Configuration Editor, select the system.webServer/serverRuntime section.

    2. Update frequentHitThreshold to 1.

    3. Update frequentHitTimePeriod to 00:10:00.

  9. Enable static content caching for Interaction Connect:

    The following table summarizes the cache settings. Steps to configure cache settings follow.

    Note: Client/addins and client/config do not exist in a new installation. If you plan to user servers.json or create custom add-ins, use the cache settings below for those folders.

    Recommended cache settings

    Directory or file

    Expire web content:

    client/lib

    After 365 days

    client/addins

    Immediately

    client/config

    Immediately

    client/index.html

    After 15 minutes

    1. Expand the site in the tree view and select the client/lib folder.

    2. Double click the HTTP Response Headers module.

    3. Click Set Common Headers.

    4. In the dialog box:

      1. Check Expire Web content.

      2. Select After and enter 365 days in the fields.

    5. Click OK.

    6. Repeat steps 1-5 for the client/addins and client/config directories with the following difference:

      Select Immediately under Expire web content.

    7. Right-click on the client folder and select Switch to Content View.

    8. Select index.html.

    9. In the Actions pane click Switch to Features View.

    10. Repeat steps b-e for index.html (which should now show up under client). This time set the After expires field to 15 minutes.

  10. Verify that the following MIME types are defined in the IIS Manager for the ININApps Site by double clicking the MIME Types module:

    • .css -> text/css

    • .gif -> image/gif

    • .html -> text/html

    • .jpg -> image/jpeg

    • .js -> application/x-javascript

    • .json -> application/json

    • .otf -> application/octet-stream

    • .png -> image/png

    • .svg -> image/svg+xml

    • .ttf -> application/octet-stream

    • .woff -> font/x-woff

    • .woff2 -> application/font-woff2

  11. (Optional) If you want to set the CIC server that the CIC Web Applications connect to, follow the instructions in servers.json.

  12. Restart the IIS server by using the iisreset command line application.

  13. Verify that all applications work as expected.

The basic installation tasks are complete, and the CIC Web Applications should be functional. To enable encryption, see Enable HTTPS between the web browser and IIS and Enable HTTPS between IIS and CIC.