gpt4 book ai didi

azure - 从 Node.js 创建 WebApp 资源时出现 "The parameter LinuxFxVersion has an invalid value"

转载 作者:行者123 更新时间:2023-12-03 15:55:43 27 4
gpt4 key购买 nike

我尝试在 Node.js 环境中使用 Azure SDK for JS 创建一个简单的 WebApp,但我不断收到响应:

{
"Code":"BadRequest",
"Message":"The parameter LinuxFxVersion has an invalid value.",
"Target":null,
"Details":[
{"Message":"The parameter LinuxFxVersion has an invalid value."},
{"Code":"BadRequest"},
{"ErrorEntity": {
"ExtendedCode":"01007",
"MessageTemplate":"The parameter {0} has an invalid value.",
"Parameters":["LinuxFxVersion"],
"Code":"BadRequest",
"Message":"The parameter LinuxFxVersion has an invalid value."}
}],
"Innererror":null
}

我尝试了各种不同的属性和环境,但没有成功。我总是收到这个错误。这是我正在使用的 TypeScript 代码片段:

    const wsmClient: WebSiteManagementClient...
const webAppName: string...
const servicePlanId: string...
const rgName: string...
const envelope: Site = {
name: webAppName,
location: 'westus2',
kind: 'app,linux',
serverFarmId: servicePlanId,
siteConfig: {
linuxFxVersion: 'JAVA|11-java11'
}
};
const appResp = await wsmClient.webApps.createOrUpdate(
rgName,
webAppName,
envelope
);

我做错了什么?

最佳答案

原因:

您的应用服务计划不是 Linux,实际上是 Windows。 Windows 主机没有参数 LinuxFxVersion。

如果我们创建站点时没有明确将主机配置为 Linux,则默认情况下它将是 Windows 主机/serverFarm/app 服务计划。使用 {"kind":"linux"} 是不够的。

解决方案:

在 Linux 中显式定义应用服务计划,并确保{"reserved": true} 将其设置为 Linux 主机 ( See documentation )

{
"type": "Microsoft.Web/serverfarms",
"apiVersion": "2019-08-01",
"name": "[parameters('hostingPlanName')]",
"location": "[parameters('location')]",
"kind": "app,linux",
"properties": {
"reserved": true
},
"sku": {
"Tier": "[parameters('hostingPlanSkuTier')]",
"Name": "[parameters('hostingPlanSkuName')]"
}
}

关于azure - 从 Node.js 创建 WebApp 资源时出现 "The parameter LinuxFxVersion has an invalid value",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58632521/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com