diff --git a/docs/content/2.deploy/providers/iis.md b/docs/content/2.deploy/providers/iis.md
index bd3bfad205..b602b4b460 100644
--- a/docs/content/2.deploy/providers/iis.md
+++ b/docs/content/2.deploy/providers/iis.md
@@ -6,22 +6,24 @@ Deploy Nitro apps to IIS.
This is an experimental preset.
::
-## Using [IISnode](https://github.com/Azure/iisnode) (recommended)
+## Using [IISnode](https://github.com/Azure/iisnode)
**Preset:** `iis_node` ([switch to this preset](/deploy/#changing-the-deployment-preset))
-1. Install [IISnode](https://github.com/azure/iisnode/releases), and the [IIS URL Rewrite Module](https://www.iis.net/downloads/microsoft/url-rewrite).
-2. In IIS, add `.mjs` as a new mime type and set its content type to `application/javascript`.
-3. Deploy the contents of your `.output` folder to your website in IIS.
+1. Install the latest LTS version of [Node.js](https://nodejs.org/en/) on your Windows Server.
+1. Install [IISnode](https://github.com/azure/iisnode/releases)
+2. Install [IIS `URLRewrite` Module](https://www.iis.net/downloads/microsoft/url-rewrite).
+3. In IIS, add `.mjs` as a new mime type and set its content type to `application/javascript`.
+4. Deploy the contents of your `.output` folder to your website in IIS.
-## Using IIS directly
+## Using IIS Handler
-**Preset:** `iis-handler` ([switch to this preset](/deploy/#changing-the-deployment-preset))
+**Preset:** `iis_handler` / `iis` ([switch to this preset](/deploy/#changing-the-deployment-preset))
-If you do not wish to use IISnode, you can use IIS directly.
+You can use IIS http handler directly.
-1. Make sure that [Node.js](https://nodejs.org/en/) is installed on your Windows Server.
-2. Make sure [`HttpPlatformHandler` Module](https://www.iis.net/downloads/microsoft/httpplatformhandler) is installed.
+1. Install the latest LTS version of [Node.js](https://nodejs.org/en/) on your Windows Server.
+2. Install [IIS `HttpPlatformHandler` Module](https://www.iis.net/downloads/microsoft/httpplatformhandler)
3. Copy your `.output` directory into the Windows Server, and create a website on IIS pointing to that exact directory.
## IIS Config options
diff --git a/src/presets/iis.ts b/src/presets/iis.ts
index 09e0ef58b1..f6b6df12e4 100644
--- a/src/presets/iis.ts
+++ b/src/presets/iis.ts
@@ -4,7 +4,7 @@ import { resolveFile, writeFile } from "../utils";
import { defineNitroPreset } from "../preset";
import type { Nitro } from "../types";
-export const iis = defineNitroPreset({
+export const iisHandler = defineNitroPreset({
extends: "node-server",
hooks: {
async compiled(nitro: Nitro) {
@@ -16,6 +16,8 @@ export const iis = defineNitroPreset({
},
});
+export const iis = iisHandler;
+
export const iisNode = defineNitroPreset({
extends: "node-server",
hooks: {
@@ -42,45 +44,69 @@ export const iisNode = defineNitroPreset({
async function iisnodeXmlTemplate(nitro: Nitro) {
const path = resolveFile("web.config", nitro.options.rootDir, ["config"]);
const originalString = `
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
`;
if (path !== undefined) {
const fileString = await readFile(path, "utf8");
diff --git a/src/presets/index.ts b/src/presets/index.ts
index a4be1c3c93..fc98a0f43d 100644
--- a/src/presets/index.ts
+++ b/src/presets/index.ts
@@ -26,6 +26,6 @@ export * from "./cleavr";
export * from "./layer0";
export * from "./flightcontrol";
export * from "./lagon";
-export { iis, iisNode } from "./iis";
+export { iis, iisHandler, iisNode } from "./iis";
export { _static as static } from "./static";
export * from "./github-pages";