Я пытаюсь настроить Apache 2.4 на сервере Windows.

Мне нужны два разных "Динамически настроенных массовых виртуальных хостинга" :

  • "простой" для обслуживания папок с жесткого диска "проекты",
  • и другой с большим количеством опций для проектов, использующих фреймворк Symfony.

Чтобы различить их, я подумал об использовании URL-адреса "example" для обслуживания папки "example" и «example.symfony» для обслуживания папки "example" с использованием конфигурации symfony vhost.

Вот мой файл httpd-vhosts.conf :

# symfony virtual hosts
<VirtualHost *:80>
    ServerAlias *.symfony:80
    VirtualDocumentRoot "E:\%1\web"

    <Directory "E:\%1\web">
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Allow from All
    </Directory>

    Alias /sf "E:\%1\lib\vendor\symfony\data\web\sf"
    <Directory "E:\%1\lib\vendor\symfony\data\web\sf">
        AllowOverride All
        Allow from All
    </Directory>
</VirtualHost>



# other virtual hosts
<VirtualHost *:80>
    ServerAlias *:80

    VirtualDocumentRoot "E:\%0"

    <Directory "E:">
        Options Indexes FollowSymLinks MultiViews
        IndexIgnore .git
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>
</VirtualHost>

В этой конфигурации и example, и example.symfony используют одинаковые настройки. Я предполагаю, что Apache предпочитает ServerAlias " *:80 ", более всеобъемлющий?

Что я пробовал:

  • используя ServerName вместо ServerAlias , но он не допускает подстановочные знаки *.
  • изменение порядка определения vhost, но это ничего не меняет.
  • пишет <VirtualHost *.symfony:80> , но это неверно , Apache говорит:«Не удалось разрешить имя хоста .symfony - игнорируем!"

0