Common troubleshooting for Package Installer

Prev

Overview

The Bazefield Package Installer service (Baze.PackageInstaller.Service.Host) runs as a Windows service and exposes its API on its own Kestrel listener. When IIS sits in front of it as a reverse proxy, two IIS modules must be installed on the host before the service will be reachable from outside the machine.

This article is a runbook for operations and customers deploying the Package Installer behind IIS. It covers the required modules, how to install them, how to enable ARR proxying, how to verify the setup, and the most common error signatures that point at a missing piece.

Required IIS modules

  • URL Rewrite Module — Microsoft IIS URL Rewrite. Provides the rule engine used by the Package Installer site's web.config and required by ARR.

  • Application Request Routing (ARR) — Microsoft IIS Application Request Routing. Provides the proxy/forwarding capability so IIS can pass requests through to the Package Installer's Kestrel listener (default port 11032, configured via AdditionalPorts in Baze.PackageInstaller.Service.AppSettings.config).

Important: Both modules are required. ARR cannot function without URL Rewrite, and URL Rewrite alone will not proxy requests. Installing only one of them is not sufficient.

Install the modules

Web Platform Installer is deprecated and should no longer be used. Install each module directly from its official Microsoft download page:

  1. Install URL Rewrite first.

  2. Install Application Request Routing next.

  3. Run iisreset from an elevated PowerShell or Command Prompt.

Enable ARR as a proxy

ARR ships with proxying disabled by default. It must be turned on at the server level once after installation.

  1. Open IIS Manager.

  2. Select the server node in the Connections pane (not an individual site).

  3. Double-click Application Request Routing Cache.

  4. In the right-hand Actions pane, click Server Proxy Settings….

  5. Tick Enable proxy and click Apply.

Verify the installation

Run all three checks below to confirm the host is correctly configured.

  1. IIS Manager check — Select the server node and confirm the URL Rewrite and Application Request Routing Cache icons are both visible in the centre pane.

  2. PowerShell check — Run the following from an elevated PowerShell. Both modules must appear in the output:

    Get-WebGlobalModule | Where-Object Name -Match 'Rewrite|ApplicationRequestRouting'

    The result should list both RewriteModule and ApplicationRequestRouting_Module.

  3. Browser check — Browse to the public Package Installer URL. The Package Installer SPA or API response should be returned, not an IIS error page or the default IIS welcome page.

Common symptoms when modules are missing or misconfigured

Use the symptom shown by the browser or in the IIS logs to narrow down which piece is missing:

Symptom

Likely cause

HTTP Error 500.19 - Internal Server Error referencing rewrite in web.config

URL Rewrite is not installed.

HTTP Error 404.0 on every Package Installer URL (including /api/installer/packagestatuses)

ARR is not installed, or ARR proxying is not enabled at the server level.

HTTP Error 502.3 - Bad Gateway

The Package Installer Windows service is not running on the configured port, or the IIS site's web.config points at the wrong port.

Browser hits the IIS default welcome page instead of the Package Installer UI

ARR is not installed, or the IIS site binding is wrong.

Tip: After installing or enabling either module, always run iisreset before re-testing. IIS does not pick up new global modules until the worker processes are recycled.