如何简单地列出大约 99 个域来启用 CORS?

MSh*_*ack 4 regex apache .htaccess mod-headers

我目前的.htaccess文件列出了数十个域,以便从我的服务器启用 CORS。

我在下面缩短了示例,但所有域名都是相似的,域名中唯一更改的部分是 www 后面的 1 或 2 位数字。

<IfModule mod_headers.c>
    SetEnvIf Origin "http(s)?://(www48.example.com||www47.example.com)$" AccessControlAllowOrigin=$0
        Header add Access-Control-Allow-Origin %{AccessControlAllowOrigin}e env=AccessControlAllowOrigin
        Header merge Vary Origin
</IfModule>
Run Code Online (Sandbox Code Playgroud)

所以在这个例子中我启用了 CORS

https://www48.example.com
https://www47.example.com
Run Code Online (Sandbox Code Playgroud)

我想要一种更简单的方法来启用具有相似名称的 99 个域的列表。因此,除了“www”后面的数字 1 到 99 之外,所有域名都是相同的,如何在不单独列出所有 99 个域名的情况下实现这一目标?

https://www1.example.com
https://www2.example.com
....
https://www10.example.com
....
https://www40.example.com
....
https://www70.example.com
....
https://www99.example.com
Run Code Online (Sandbox Code Playgroud)

MSh*_*ack 5

这似乎有效,有人审查并看看是否可以

<IfModule mod_headers.c>
    SetEnvIf Origin "http(s)?://(www[1-9][0-9]?\.example\.com)$" AccessControlAllowOrigin=$0
        Header add Access-Control-Allow-Origin %{AccessControlAllowOrigin}e env=AccessControlAllowOrigin
        Header merge Vary Origin
</IfModule>
Run Code Online (Sandbox Code Playgroud)