mod_evhost должен иметь возможность определить один корень документа из частей представленного имени хоста.Он не может угадать среди трех вариантов и не пытаться выяснить, какой из них существует (особенно, если это происходит по нескольким случайным причинам).
Вы должны будете либо предоставить mod_evhost достаточно информации в именах хостов, чтобыоднозначно выберите путь, или вам придется задействовать хотя бы один уровень перенаправления в вашей файловой системе.
Вариант 1:
evhost.path-pattern = vhosts_dir + "/%2.%1/public/"
Это приводит к потере всей информации о клиенте / магазине / компании, которую вы хотите захватить,но на самом деле это позволяет mod_evhost работать.
Вариант 2. У вас есть каталоги, которые вы хотите разделить, и каталог, полный ссылок на эти каталоги.FS имеет видимую структуру, и mod_evhost должен только угадать имя ссылки, которая перенаправляет в вашу структуру.
directory_containing_links/
foo.bar -> ./customers/foo.bar/public/
foo.baz -> ./customershops/foo.baz/public/
foo.qux -> ./company/foo.qux/public/
quux.bar -> ./customershops/quux.bar/public/
quux.baz -> ./customers/quux.baz/public/
(and so on, with one link per site)
directory_containing_sites/
company/foo.qux/public/(web site here)
customers/foo.bar/public/(web site here)
customers/quux.baz/public/(web site here)
customershops/foo.baz/public/(web site here)
customershops/quux.bar/public/(web site here)
Тогда ваш шаблон evhost будет
evhost.path-pattern = directory_containing_links + "/%2.%1/"
Обратите внимание, что directory_conisting_links и directory_conisting_sites могут быть одним и тем же каталогом.