YAML提示Access-Control-Allow-Origin行无效,遗漏了什么配置规则?
错误原因
YAML 语法中*属于保留字符,用于锚点引用标记,你直接将*作为Access-Control-Allow-Origin的值且没有用引号包裹时,YAML 解析器会尝试将其解析为锚点引用,而非普通字符串,因此触发语法错误。
另外你的配置还有两处不符合规范的写法,也可能导致后续运行异常:
- Etag 字段用了 HTML 转义字符
",不会被 YAML 解析器自动还原为普通引号,会导致响应头的 Etag 值格式错误 - Set-Cookie 字段末尾多了多余的分号,不符合HTTP响应头的规范
解决方法
对包含YAML保留字符的字符串值用引号包裹,同时修正另外两处不规范写法,修改后的完整配置如下:
http: - request: path: / method: GET response: headers: Server: Apache Last-Modified: Mon, 29 Mar 2021 15:54:09 GMT Etag: '"19bbb-5beaee46ce7fa"' Accept-Ranges: bytes Content-Length: 105403 Vary: Accept-Encoding Set-Cookie: HttpOnly;Secure Access-Control-Allow-Origin: "*" Content-Type: text/html file: 0.html status: 200
内容的提问来源于stack exchange,提问作者zexapod
相关产品推荐
相关产品推荐

