virtualhost配置中的apache西里尔通配符

virtualhost配置中的apache西里尔通配符,apache,nginx,wildcard-subdomain,virtual-hosts,Apache,Nginx,Wildcard Subdomain,Virtual Hosts,有一个问题。我有一个包含许多子域的项目,其配置如下: VirtualHost1: ServerAlias a*.example.com VirtualHost2: ServerAlias b*.example.com VirtualHost3: ServerAlias c*.example.com VirtualHost1: ServerAlias a*.example.com VirtualHost2: ServerAlias б*.example.com VirtualHost3: Ser

有一个问题。我有一个包含许多子域的项目,其配置如下:

VirtualHost1: ServerAlias a*.example.com
VirtualHost2: ServerAlias b*.example.com
VirtualHost3: ServerAlias c*.example.com
VirtualHost1: ServerAlias a*.example.com
VirtualHost2: ServerAlias б*.example.com
VirtualHost3: ServerAlias в*.example.com
它工作得很好。现在我需要相同的,但是非拉丁语域(西里尔文),类似这样的:

VirtualHost1: ServerAlias a*.example.com
VirtualHost2: ServerAlias b*.example.com
VirtualHost3: ServerAlias c*.example.com
VirtualHost1: ServerAlias a*.example.com
VirtualHost2: ServerAlias б*.example.com
VirtualHost3: ServerAlias в*.example.com
在尝试punycode converter时,我看到如下内容:

ббб -> xn--90aaa
баб -> xn--80abb
бав -> xn--80abe
因此,即使是一个字母,也有一个通配符的问题。是否有一种方法可以为子域(25-30个虚拟主机)的第一个字母创建一个虚拟主机,而不是为每个子域(400-500个虚拟主机)编写一个虚拟主机

也许nginx或其他人可以做这样的事情


UPD。每个子域都有自己的ssl证书,因此它们必须相互连接(现在它在a-z域的apache配置中,并且作为通配符工作:a*.example.com证书、w*.example.com证书等等。我们需要对西里尔文子域执行相同的操作)

我在nginx或apache中找不到类似的内容。就我个人而言,我会用Node.js编写的服务器来解决这个问题。不幸的是,这不是一个新项目,它是一个域下的5个大型站点。这似乎不是一个快速的解决方案(从apache迁移到自写的node.js服务器)。我们的项目主要是用PHP编写的,完全重写不是一个选择。但是,如果你是说nodejs gate/input proxy/dispatcher,那可能会很有趣(但我不知道这是否可能——所有子域都有自己的https证书,因此需要手动将其附加到子域。我知道如何在apache和nginx中实现)。如果这两件事都有可能的话,我想知道细节。你如何想象一个针对每个http请求的punycode解码例程?