Skip to content

Commit

Permalink
Upgraded IIS oob article.
Browse files Browse the repository at this point in the history
  • Loading branch information
lextm committed May 1, 2024
1 parent 17b6afd commit bbdb086
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 9 deletions.
16 changes: 9 additions & 7 deletions _posts/2017/2017-9-8-status-of-iis-out-of-band-modules.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,12 @@ Then how to address the need of such modules if you really cannot get rid of the

## Extra Note on Windows ARM64

If you are running IIS on Windows ARM64, you might find that some modules are crashing your application pools as long as the worker processes are configured to launch as ARM64. This is because Microsoft has not released ARM64 builds of the modules. You can either wait for Microsoft to release updated installers, or find alternative solutions,

* Force the application pools to run as x86 or x64. Due to emulation, the performance might not be as good as native ARM64, but at least your application pools won't crash.
* For HttpPlatformHandler, you might refer to [this post]({% post_url 2024/2024-4-8-httpplatformhandler-v2 %}) to install the open source HttpPlatformHandler v2.
* For ASP.NET Core module, you might refer to [this post]({% post_url 2023/2023-3-31-successful-and-failed-attempt-my-first-pull-request-for-asp-net-core %}) to patch ASP.NET Core module for ARM64.

More would be added here if I find out. You can also leave a comment with your suggestion.
| Module | Comments |
|--------|---------------------|
| ARR | You can only use it with x86/x64 application pools. ARM64 application pools will crash. |
| CORS module | You can only use it with x86/x64 application pools. ARM64 application pools will crash. |
| URL Rewrite module | * Microsoft installer: You can only use it with x86/x64 application pools. ARM64 application pools will crash. <br>* Possible to resolve this by extracting the right bits from IIS Express ARM64 but no one did that. |
| HttpPlatformHandler | * Microsoft installer: You can only use it with x86/x64 application pools. ARM64 application pools will crash. <br>* Open source HttpPlatformHandler v2: Refer to [this post]({% post_url 2024/2024-4-8-httpplatformhandler-v2 %}) to install the this. |
| ASP.NET Core module | * Microsoft installer: You can only use it with ARM64 application pools. x86/x64 application pools will crash. <br>* LeXtudio patch: Refer to [this post]({% post_url 2023/2023-3-31-successful-and-failed-attempt-my-first-pull-request-for-asp-net-core %}) to patch ASP.NET Core module on Windows ARM64 |

More would be added here if I find out. You can also leave a comment with your questions or suggestions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ image:
alt: Copyright © Lex Li. Autumn tree near Costco, Montreal.
---

Microsoft Azure was built upon Windows and IIS in its early days, which is not surprising. At that time, IIS 7 was shipped with PHP support, and had the capabilities to enable ASP.NET/PHP apps. Later [Microsoft added HttpPlatformHandler](https://azure.microsoft.com/en-ca/blog/announcing-the-release-of-the-httpplatformhandler-module-for-iis-8/) in 2015, which enabled other languages (Java, Node.JS, Go, Ruby, and Python) on IIS and Windows.
Microsoft Azure was built upon Windows and IIS in its early days, which is not surprising. At that time, IIS 7 was shipped with PHP support, and had the capabilities to enable ASP.NET/PHP apps. Later [Microsoft added HttpPlatformHandler](https://azure.microsoft.com/blog/announcing-the-release-of-the-httpplatformhandler-module-for-iis-8/) in 2015, which enabled other languages (Java, Node.JS, Go, Ruby, and Python) on IIS and Windows.

All look good, but we do know Windows is not equivalent to Linux, and Microsoft released [Azure App Service on Linux](https://azure.microsoft.com/en-ca/blog/general-availability-of-app-service-on-linux-and-web-app-for-containers/) last year.
All look good, but we do know Windows is not equivalent to Linux, and Microsoft released [Azure App Service on Linux](https://azure.microsoft.com/blog/general-availability-of-app-service-on-linux-and-web-app-for-containers/) last year.

So naturally, if you are hosting web apps on Azure, especially PHP/Python/Ruby users, you have both Windows and Linux backends to choose from.
<!--more-->
Expand Down

0 comments on commit bbdb086

Please sign in to comment.