使用反向代理在 IIS 中创建站点的 PowerShell 脚本,例如。 http://localhost:9001

PowerShell script to create a site in IIS with Reverse Proxy to eg. http://localhost:9001

我正在尝试自动部署我们的 .NET 5 GenericHost 服务。由于它们同时具有 WebAPI 和 long-运行 进程,恕我直言,将它们部署为 Windows 服务然后创建一个充当反向代理的 IIS 站点是有意义的。简而言之:

Browser ---------------------> IIS site -----------------------> WindowsService
         https:/somesite.com             http://localhost:9001 

我在此设置中的“唯一”问题是如何使用 PowerShell 创建反向代理 IIS 站点。我对这部分的经验绝对为零。

我发现必须使用 PowerShell 的 IIS 模块。但是我看不到它是否允许访问 URL Rewrite 2,这是我知道如何在 IIS 中进行反向代理的方式。

有人知道这方面的正确文档吗?

是的,PowerShell Web 管理模块可用于编辑重写配置

编辑全局规则的示例:

Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST'  -filter "system.webServer/rewrite/globalRules/rule[@name='Test']/match" -name "url" -value "foobar"

我会使用 IIS Manager 中的 Configuration Editor 创建规则,然后使用“操作”窗格中的 Generate Script 功能创建一个 PowerShell 脚本,然后您可以在其他地方使用该脚本。