Azure自定义扩展脚本运行时报invalid uri错误该如何解决
Azure自定义脚本扩展
invalid uri fileUri_{1}/fileUri_{2}报错解决方案 该类报错核心原因为自定义脚本扩展的fileUris参数配置不符合要求,可按以下步骤排查修复:
- 确认
fileUris参数传值格式:该参数要求传入字符串数组格式,如果部署时传参格式错误(比如填写了非数组类型值、多URL分隔符错误、留了空的数组元素),就会触发这类带占位符的无效URI报错。如果仅需运行单个脚本,数组内仅填写1个有效URL即可,不要留空的第二个元素。 - 检查Blob URL的有效性:如果你选择将脚本托管在Blob存储,填写的必须是.ps1脚本文件的完整直接访问URL,而非容器URL。URL必须带完整https前缀,国际版Azure格式为
https://<存储账户名>.blob.core.windows.net/<容器名>/<脚本名>.ps1,国内Azure格式为https://<存储账户名>.blob.core.chinacloudapi.cn/<容器名>/<脚本名>.ps1。你可以直接在无痕浏览器中粘贴该URL,确认无需登录即可直接下载脚本,排除URL拼写错误、权限未生效、文件名错误问题。 - 无需托管脚本可直接配置执行命令:如果只是运行单行PowerShell脚本,不需要上传脚本到Blob存储,直接删除
fileUris参数的所有配置,将命令直接写入commandToExecute参数即可,正确写法为:
powershell -ExecutionPolicy Unrestricted -Command "new-item c:\code -ItemType Directory -Force -ErrorAction SilentlyContinue"
- 检查URL转义规则:如果你的Blob URL包含空格、特殊字符,部署传参时未做正确转义也会被识别为无效URI,需确保传参时URL的特殊字符已做标准URL编码。
内容的提问来源于stack exchange,提问作者microset
相关产品推荐
相关产品推荐

